项目链接
https://gitee.com/wang-Ningk/mybatisplus-autoConfiguration.git
1.说明
MybatisPlus的自动填充字段可以让我们避免一些繁琐的字段,create_user,create_time等。
2.引入依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
</dependency>
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.5.2</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.30</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
</dependency>
3.pojo类
/**
* @author: wangning
* @date: 2023-12-14 18:14
**/
@lombok.Data
@TableName("t_data")
public class Data {
private Integer id;
/**
*指定填充的字段与填充方式
*/
@TableField(fill = FieldFill.INSERT)
private String createUser;
/**
* 指定填充字段和填充方式
*/
@TableField(fill = FieldFill.INSERT_UPDATE)
private String updateUser;
}
4.配置
/**
* 自动填充配置类
*
* @author: wangning
* @date: 2023-12-14 18:26
**/
@Configuration
@Slf4j
public class AutoConfiguration implements MetaObjectHandler {
/**
* 插入时自动填充
*
* createUser 填充字段, create_admin 填充内容
* @param metaObject
*/
@Override
public void insertFill(MetaObject metaObject) {
this.setFieldValByName("createUser", "create_admin", metaObject);
this.setFieldValByName("updateUser", "update_admin", metaObject);
log.info("插入时候自动填充");
}
/**
* 更新时自动填充
*
* @param metaObject
*/
@Override
public void updateFill(MetaObject metaObject) {
this.setFieldValByName("updateUser", "update_admin", metaObject);
log.info("更新时候自动填充");
}
}
5.yml文件
server:
port: 8080
spring:
datasource:
url: jdbc:mysql://localhost:3306/springbootdata?serverTimezone=UTC&useUnicode=true&characterEncoding=utf8&useSSL=false
username: root
password: root
driver-class-name: com.mysql.cj.jdbc.Driver