Mybtisplus对时间字段进行自动填充

这篇具有很好参考价值的文章主要介绍了Mybtisplus对时间字段进行自动填充。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、引入依赖

 <!--        mybatis-plus-boot-starter-->
        <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus-boot-starter</artifactId>
            <version>3.4.2</version>
        </dependency>

二、配置类

        这里我主要对字段createTime和updateTime进行自动填充,你们可以修改为自己对应的字段即可。

@EnableTransactionManagement
@Configuration
public class MybatisPlusConfig implements MetaObjectHandler {

    @Bean
    public MybatisPlusInterceptor mybatisPlusInterceptor() {
        MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();
        interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL));
        return interceptor;
    }

    @Override
    public void insertFill(MetaObject metaObject) {
        this.setFieldValByName("createTime", LocalDateTime.now(),metaObject);
        this.setFieldValByName("updateTime", LocalDateTime.now(),metaObject);
    }

    @Override
    public void updateFill(MetaObject metaObject) {
        this.setFieldValByName("updateTime", LocalDateTime.now(),metaObject);
    }
}

三、使用填充功能

        在需要填充的字段上加入 @TableField(fill = FieldFill.INSERT)或者 @TableField(fill = FieldFill.UPDATE),当执行SQL语句时就会拦截语句随后对SQL语句添加了@TableField的时间字段进行时间填充文章来源地址https://www.toymoban.com/news/detail-823313.html

@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@TableName("sys_job")
public class Job {

    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;

    private String jobName;

    private String jobGroup;

    private String invokeTarget;

    private String cronExpression;

    private Integer misfirePolicy;

    private Integer concurrent;

    private Integer status;

    @TableField(fill = FieldFill.INSERT)
    private LocalDateTime createTime;

    @TableField(fill = FieldFill.UPDATE)
    private LocalDateTime updateTime;

    private String remark;

    @TableField(exist = false)
    private Date nextValidTime;

}

到了这里,关于Mybtisplus对时间字段进行自动填充的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • spring boot application yaml key下划线如何转java的Properties对象字段驼峰

    spring boot yaml key和value如何映射到Properties对象 下面以MybatisPlusProperties为例 ##java properties 字段驼峰 ##yaml文件如图,key使用下划线 ##java对象驼峰转下划线匹配yaml文件key DataObjectPropertyName.toDashedForm(name);//驼峰转下划线 ##设置Properties对象字段值

    2024年02月01日
    浏览(47)
  • MybatisPlus自动填充创建(更新)时间

    目录 一、实现MetaObjectHandler 二、使用注解 在大多数情况下,我们在创建数据库时都会加上创建、更新时间这些字段,为了保证数据的可追溯性,当然肯定还是有操作日志记录表用来做追溯记录。开发中每一次的创建更新都需要手动去设置这一次操作的时间,会有很多的代码

    2024年02月12日
    浏览(37)
  • mybatis-plus 自动填充创建时间/更新时间

    方式一:数据库级别 创建时间create_time字段设置类型为timestamp,默认值为CURRENT_TIMESTAMP; 更新时间update_time字段设置类型为timestamp,默认值为CURRENT_TIMESTAMP,勾选 根据当前时间戳更新 。 实体类createTime字段设置数据类型为Date; 实体类updateTime字段设置数据类型为Date。 注意:

    2024年02月14日
    浏览(103)
  • elasticsearch自动填充时间,并转换为上海时区

    由于ES默认时区为UTC,比我上海时区慢八个小时且是TZ格式,当我们需要自动填充为yyyyy-MM-dd HH:mm:ss格式时我们就需要对其进行处理。 1、定义预处理管道:chage_utc_to_asiash(管道名可更改) 2、创建索引,指定管道 3、写入数据 4.查看结果  

    2024年02月11日
    浏览(43)
  • 【Java】制作pdf模板使用后端程序填充字段生成pdf或者图片

    自行下载安装; 打开pdf文件,表单-添加或编辑域 添加文本域,调整大小,可以编辑域的名字,默认fill_1这种名字。域鼠标右键-属性,可以调整字体大小等样式,编辑好还可以锁定; 编辑好保存,这个pdf文件就可以当模板使用了; 防止中文乱码,需要在网上下载字体ttf文件

    2024年01月21日
    浏览(46)
  • Java 框架面试题-Spring Boot自定义配置与自动配置共存

    Spring Boot 是一个快速开发框架,可以简化 Spring 应用程序的开发,其中自定义配置是其中一个非常重要的特性。 在 Spring Boot 中,自定义配置允许开发者以自己的方式来配置应用程序。自定义配置可以用于覆盖默认配置,也可以用于添加新的配置项。本文将详细介绍 java框架面

    2023年04月11日
    浏览(51)
  • 基于 Spring Boot+MySQL实现的在线考试系统源码+数据库,基于不同类型的客观题,进行自动组卷、批卷等功能的考试系统

    一个 JAVA 实现的在线考试系统,主要实现一套基于不同类型的客观题,进行自动组卷、批卷等功能的考试系统(没有主观题) 后端技术栈 基于 Spring Boot 数据库 MySQL ORM MyBatis MyBatis-plus 缓存 Redis 、guava的LoadingCache 安全 Shiro Excel 导出 easyexcel 日志 slf4j、log4j2 图片上传 qiniu 其它工具

    2024年01月22日
    浏览(172)
  • Spring boot MongoDB 实现自定义审计字段

    AuditorAware 是什么? AuditorAware 是Spring Data提供的一个接口,用于提供当前执行数据库操作的\\\"审计员\\\"的信息。\\\"审计员\\\"可以是当前操作的用户、系统的默认用户或其他相关信息,用于记录和跟踪数据的变更历史。 具体来说, AuditorAware 的作用是为实体类中标记了 @CreatedBy 和 @L

    2024年02月12日
    浏览(38)
  • Elasticsearch:自动使用服务器时间设置日期字段并更新时区

    在大多数情况下,你的数据包含一个以 create_date 命名的字段。 即使没有日期字段,处理各种格式和时区的日期对数据仓库来说也是一个重大挑战。 与此类似,如果要检测变化的数据,则必须准确设置日期字段。 在 Elasticsearch 中还有一个选项可以自动将服务器的日期设置为字

    2024年02月08日
    浏览(55)
  • Java项目时间字段问题-MySQL

    Java项目时间字段问题-MySQL ​ 在 Java 项目中,与 MySQL 数据库中的时间字段对应的 Java 类型通常使用 java.time 包中的类,这是从 Java 8 开始引入的日期和时间 API。以下是常见的时间字段和它们在 Java 实体类中的对应类型示例: 1、DATETIME 或 TIMESTAMP ​ 在 MySQL 中, DATETIME 和 TIME

    2024年02月10日
    浏览(40)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包