当前位置: 首页>行业洞察> 正文

MyBatis-Plus自动填充新增更新时间

2025-08-0766

当我们使用mybatis对一个实体进行插入或者更新的时候,如何对指定字段默认生成值,不用每次自己去赋值,下面将告诉大家,我会以新增时间和更新时间为例,其他的相似。

1.首先在实体字段加上注解@TableField

publicclassBaseEntityimplementsSerializable{privatestaticfinallongserialVersionUID=1L;/**创建时间*/@JsonFormat(pattern="yyyy-MM-ddHH:mm:ss",timezone="GMT+8")@TableField(fill=)privateDatecreateTime;/**更新时间*/@JsonFormat(pattern="yyyy-MM-ddHH:mm:ss",timezone="GMT+8")@TableField(fill=_UPDATE)privateDateupdateTime;publicDategetCreateTime(){returncreateTime;}publicvoidsetCreateTime(DatecreateTime){=createTime;}publicDategetUpdateTime(){returnupdateTime;}publicvoidsetUpdateTime(DateupdateTime){=updateTime;}}

2.具体赋值配置

;;;;;;/***自动生成时间*/@ComponentpublicclassMyDetaObjectHanderimplementsMetaObjectHandler{@OverridepublicvoidinsertFill(MetaObjectmetaObject){ObjectcreateTime=getFieldValByName("createTime",metaObject);if((createTime)){("createTime",newDate(),metaObject);}ObjectupdateTime=getFieldValByName("updateTime",metaObject);if((updateTime)){("updateTime",newDate(),metaObject);}}@OverridepublicvoidupdateFill(MetaObjectmetaObject){("updateTime",newDate(),metaObject);}}

这样就达到了,当我们对BaseEntity赋值的时候,会自动对createTime和updateTime附上对应类型的值。

版权所有©Copyright © 2022-2030 人才动力源

备案号:蜀ICP备15016710号

网站地图