问题
使用Mybatis-Plus,配置添加数据时自动填充时间,代码如下:
@Component
public class MyMetaObjectHandler implements MetaObjectHandler {
@Override
public void insertFill(MetaObject metaObject) {
// 属性名称
this.strictInsertFill(metaObject, "createTime", Date.class, new Date());
this.strictInsertFill(metaObject, "updateTime", Date.class, new Date());
}
@Override
public void updateFill(MetaObject metaObject) {
this.strictUpdateFill(metaObject, "updateTime", Date.class, new Date());
}
}
结果查询出的数据如下,可以看到跟时间相关的字段出现了格式化的问题,

解决方案
在相应的实体类的时间字段上加上以下注解:
@JsonFormat(locale = "zh", timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
再次查询,结果如下,可以看到时间格式化已经生效了

文章讲述了在使用Mybatis-Plus时遇到的自动填充时间字段(createTime和updateTime)后,时间显示格式不正确的问题。通过在实体类的时间字段上添加@JsonFormat注解,指定了locale、timezone和pattern,成功地将时间格式化为预期的yyyy-MM-ddHH:mm:ss格式,从而解决了查询结果显示的问题。
1709

被折叠的 条评论
为什么被折叠?



