问题描述
日期实体类的对象是Date,数据库是MySQL,对应字段的类型是DATETIME。数据库里存的格式是2021-05-25 20:40:11,mybatis查询出来的格式相同,但是在控制台中打印出来的却变成了Tue May 25 20:40:11 CST 2021。原本以为是mybatis在返回数据的时候自动改了日期格式,实际上是java.util.Date在get日期数据时转换成CST格式。
解决方案
既然知道是Date类在获取日期的时候转换了格式,那我们就在获取日期的时候自定义想要的格式即可。找到对应实体类的属性,重写get方法。
public String getLoginDate(){
DateFormat dFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
return dFormat.format(this.loginDate);
}