mybatisplus实现自动创建/更新时间的项目实践
Mybatis-Plus提供了自动填充功能,可以通过实现MetaObjectHandler接口来实现自动更新时间的功能。具体实现步骤如下:
(1)实现MetaObjectHandler接口,并重写其insertFill和updateFill方法。这两个方法分别在插入和更新操作时调用。
@Component
public class MyMetaObjectHandler implements MetaObjectHandler {
@Override
public void insertFill(MetaObject metaObject) {
this.setFieldValByName("createTime", new Date(), metaObject);
this.setFieldValByName("updateTime", new Date(), metaObject);
}
@Override
public void updateFill(MetaObject metaObject) {
this.setFieldValByName("updateTime", new Date(), metaObject);
}
}
上述代码中,我们实现了MetaObjectHandler接口,并将其标记为@Component,以便Spring Boot能够扫描到它。
在insertFill和updateFill方法中,我们对MetaObject对象进行了处理,分别设置了createTime和updateTime字段的值。
(2)在实体类中添加createTime和updateTime字段,@TableField注解。
@Data
public class User {
@TableId(type = IdType.AUTO)
private Long id;
@TableField(value="create_time",fill = FieldFill.INSERT)
private Date createTime;
@TableField(value="update_time",fill = FieldFill.UPDATE)
private Date updateTime;
}
上述代码中,我们在createTime和updateTime字段上添加了 @TableField 注解,并分别指定了 fill属性为 FieldFill.INSERT 和 FieldFill.UPDATE。这样,Mybatis-Plus在插入和更新操作时会自动填充相应的值。现在,当执行插入和更新操作时,Mybatis-Plus会自动填充createTime和updateTime字段的值,无需手动设置。
到此这篇关于mybatisplus实现自动创建/更新时间的项目实践的文章就介绍到这了,更多相关mybatisplus 自动创建/更新时间内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
没有编辑器的环境下是如何创建Servlet(Tomcat+Java)项目的?
今天给大家带来的是关于Java的相关知识,文章围绕着在没有编辑器的环境下如何创建Servlet(Tomcat+Java)项目展开,文中有非常详细的介绍及代码示例,需要的朋友可以参考下2021-06-06
Java 文件上传与路径处理之Paths.get()、resolve()、transferTo()的用法详解
本文详细解析了如何使用Java的Paths.get()、resolve()和Spring的transferTo()方法处理文件上传功能,并给出了完整的代码示例,感兴趣的朋友跟随小编一起看看吧2024-10-10
win10 下 idea2020安装 JetBrains-agent.jar 包后闪退的问题及解决办法
这篇文章主要介绍了win10 下 idea2020安装 JetBrains-agent.jar 包后闪退的解决办法,本文给大家带来原因分析及解决方法,需要的朋友可以参考下2020-08-08
mybatis配置Mapper.xml文件时遇到的问题及解决
这篇文章主要介绍了mybatis配置Mapper.xml文件时遇到的问题及解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2023-01-01


最新评论