一、在数据库表中的操作方法
当表中的字段是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;
}
这样一来,在执行新增/修改操作的时候,配置的字段会自动的根据设置的参数进行填充