如何处理MyBatis中数据库Date类型与Java Date类型之间的映射问题?
- 内容介绍
- 文章标签
- 相关推荐
本文共计430个文字,预计阅读时间需要2分钟。
使用MyBatis从数据库中查询出date类型字段,在Java类中仅看到日期,未看到时分秒。这是因为MyBatis默认情况下,将date类型字段映射为java.util.Date类型,该类型只包含日期信息,不包含时分秒。
原因分析:- MyBatis在映射date类型字段时,默认使用java.util.Date类型,该类型不包含时分秒信息。- 如果需要获取时分秒信息,需要修改MyBatis的配置,使其将date类型字段映射为包含时分秒的java.sql.Timestamp类型。
解决方案:
1.修改MyBatis的映射配置,将date类型字段映射为Timestamp类型。
2.在Java类中,使用Timestamp类型接收查询结果。
示例代码:
xmljava// Java类public class DateEntity { private Timestamp dateField;
// getter和setter方法}
通过以上修改,可以在Java类中获取到包含时分秒的日期信息。
使用mybatis 从数据库中查询出date 类型字段,在java 类型中只看到了日期,没有看到时分秒,
从数据库中是可以看到时分秒的。后来发现是mybatis 映射数据类型的原因:
如:
<result column="CREATEDATE" property="createdate" jdbcType="Date" />
映射出来的时间格式时分秒都为0 (2017-01=12 00:00:00)
<result column="PICKUPDATE" property="pickupdate" jdbcType="TIMESTAMP" />
映射出来的时间格式有时分秒 (2017-01=12 11:05:11)
补充知识:springboot 返回Date类型数据 格式化
1.提示类的get方法上增加JsonFormat
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") public Date getCreateTime() { return createTime; }
2.或者在配置文件中增加
spring: jackson: date-format: yyyy-MM-dd HH:mm:ss time-zone: GMT+8
以上这篇解决mybatis 数据库date 与 java中Date类型映射问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持易盾网络。
本文共计430个文字,预计阅读时间需要2分钟。
使用MyBatis从数据库中查询出date类型字段,在Java类中仅看到日期,未看到时分秒。这是因为MyBatis默认情况下,将date类型字段映射为java.util.Date类型,该类型只包含日期信息,不包含时分秒。
原因分析:- MyBatis在映射date类型字段时,默认使用java.util.Date类型,该类型不包含时分秒信息。- 如果需要获取时分秒信息,需要修改MyBatis的配置,使其将date类型字段映射为包含时分秒的java.sql.Timestamp类型。
解决方案:
1.修改MyBatis的映射配置,将date类型字段映射为Timestamp类型。
2.在Java类中,使用Timestamp类型接收查询结果。
示例代码:
xmljava// Java类public class DateEntity { private Timestamp dateField;
// getter和setter方法}
通过以上修改,可以在Java类中获取到包含时分秒的日期信息。
使用mybatis 从数据库中查询出date 类型字段,在java 类型中只看到了日期,没有看到时分秒,
从数据库中是可以看到时分秒的。后来发现是mybatis 映射数据类型的原因:
如:
<result column="CREATEDATE" property="createdate" jdbcType="Date" />
映射出来的时间格式时分秒都为0 (2017-01=12 00:00:00)
<result column="PICKUPDATE" property="pickupdate" jdbcType="TIMESTAMP" />
映射出来的时间格式有时分秒 (2017-01=12 11:05:11)
补充知识:springboot 返回Date类型数据 格式化
1.提示类的get方法上增加JsonFormat
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") public Date getCreateTime() { return createTime; }
2.或者在配置文件中增加
spring: jackson: date-format: yyyy-MM-dd HH:mm:ss time-zone: GMT+8
以上这篇解决mybatis 数据库date 与 java中Date类型映射问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持易盾网络。

