mybatisplus公共字段填充
时间: 2023-08-27 18:19:55 浏览: 161
SpringBoot Mybatis Plus公共字段自动填充功能
MyBatis Plus提供了一种方便的方式来填充公共字段,例如创建时间、更新时间等。这可以通过使用`MetaObjectHandler`接口来实现。
首先,你需要创建一个类,并实现`MetaObjectHandler`接口。在该类中,你可以重写`insertFill()`和`updateFill()`方法来填充相应的公共字段。例如:
```java
@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);
}
}
```
然后,在你的实体类中,使用`@TableField`注解来指定对应的数据库字段,并设置`fill`属性为`FieldFill.INSERT_UPDATE`或`FieldFill.INSERT`,以标识该字段需要填充。例如:
```java
@Data
@TableName("user")
public class User {
@TableId
private Long id;
private String name;
@TableField(fill = FieldFill.INSERT)
private Date createTime;
@TableField(fill = FieldFill.INSERT_UPDATE)
private Date updateTime;
}
```
这样,当你执行插入或更新操作时,MyBatis Plus会自动调用`MetaObjectHandler`中的方法来填充相应的公共字段。
希望对你有所帮助!如有任何疑问,请随时提问。
阅读全文