通过代码MyBatis-plus实现对表中createTime和updateTime进行自动更新

通过代码MyBatis-plus实现对表中createTime和updateTime进行自动更新

通过代码MyBatis-plus实现对表中createTime和updateTime进行自动更新_第1张图片

实现这样的效果可以在数据库中设置,但是我们一般建议在代码里实现,
但是总不能每次insert和update的时候都手写new当前时间

因此推荐使用mybatis-plus

1导入依赖

<dependency>
            <groupId>com.baomidougroupId>
            <artifactId>mybatis-plus-boot-starterartifactId>
            <version>3.5.0version>
        dependency>

2添加handler

package com.example.dfademo.handler;

import com.baomidou.mybatisplus.core.handlers.MetaObjectHandler;
import lombok.extern.slf4j.Slf4j;
import org.apache.ibatis.reflection.MetaObject;
import org.springframework.stereotype.Component;

import java.util.Date;

@Slf4j
@Component
public class MybatisObjectHandler implements MetaObjectHandler {
    @Override
    public void insertFill(MetaObject metaObject) {
        log.info("starting");
        this.setFieldValByName("createTime",new Date(),metaObject);
        this.setFieldValByName("updateTime",new Date(),metaObject);

    }

    @Override
    public void updateFill(MetaObject metaObject) {
        log.info("starting");
        this.setFieldValByName("updateTime",new Date(),metaObject);

    }
}

你可能感兴趣的:(mybatis,mybatis)