一、在数据库表中的操作方法
- 当表中的字段是varchar字段时可以这样设置:
例如我要设置stats(状态这个字段默认为"1"),在创建表的时候sql语句可以这样写
`stats` varchar(1) CHARACTER SET utf8 NOT NULL DEFAULT '1' COMMENT '是否审核(0.已审核,1未审核,2审核不通过)'
- 在表的表结构中也可以直接设置
二、使用mybatis-plus对参数值的插入和修改做默认值配置
- 首先定义一个实现类,实现MetaObjectHandler 接口,重写insertFill和updateFill方法,在方法里对需要设置的字段进行配置
注意: 一定要打上 @Component注解注入到容器中
@Component
public class MyMetaObjectHandler implements MetaObjectHandler {
@Override
public void insertFill(MetaObject metaObject) {
this.strictInsertFill(metaObject, "createTime", Date.class, new Date());
this.strictInsertFill(metaObject, "updateTime", Date.class, new Date());
}
@Override
public void updateFill(MetaObject metaObject) {
this.strictUpdateFill(metaObject, "updateTime", Date.class, new Date());
}
}
- 在实体类中打上注解,
FieldFill是一个枚举,用于指定在何种情况下会自动填充,有如下几种可选值:
DEFAULT:默认不处理
INSERT:插入时自动填充字段
UPDATE:更新时自动填充字段
INSERT_UPDATE:插入和更新时自动填充字段。例如:
@Data
public class User {
private Long id;
private String name;
private Integer age;
private String email;
@TableField(fill = FieldFill.INSERT)
private Date createTime;
@TableField(fill = FieldFill.INSERT_UPDATE)
private Date updateTime;
}
- 这样一来,在执行新增/修改操作的时候,配置的字段会自动的根据设置的参数进行填充
更多推荐
给数据库表字段设置默认值
发布评论