@Data public class User { @TableId(type = IdType.AUTO) //1,auto 自动增长,2,input 自己输入 3,uuid 自动生成一个随机唯一值 // @TableId(type = IdType.ID_WORKER) private Long id; private String name; private Integer age; private String email; @TableField(fill = FieldFill.INSERT)//自动填充注解:INSERT 添加时自动填充 private Date createTime; @TableField(fill = FieldFill.INSERT_UPDATE) //自动填充注解: INSERT_UPDATE 代表添加或修改时,自动填充 private Date updateTime; }
@Component public class MyMetaObjectHandler implements MetaObjectHandler { /** * 使用mp实现添加操作,这个方法执行添加操作。 * @param metaObject */ @Override public void insertFill(MetaObject metaObject) { // log.info("start insert fill ...."); // this.strictInsertFill(metaObject, "createTime", LocalDateTime.class, LocalDateTime.now()); // 起始版本 3.3.0(推荐使用) // // 或者 // this.strictInsertFill(metaObject, "createTime", () -> LocalDateTime.now(), LocalDateTime.class); // 起始版本 3.3.3(推荐) // // 或者 // this.fillStrategy(metaObject, "createTime", LocalDateTime.now()); // 也可以使用(3.3.0 该方法有bug) this.setFieldValByName("createTime",new Date(),metaObject); this.setFieldValByName("updateTime",new Date(),metaObject); } /** * 使用mp实现添加操作,这个方法执行修改操作。 * @param metaObject */ @Override public void updateFill(MetaObject metaObject) { // log.info("start update fill ...."); // this.strictUpdateFill(metaObject, "updateTime", LocalDateTime.class, LocalDateTime.now()); // 起始版本 3.3.0(推荐) // // 或者 // this.strictUpdateFill(metaObject, "updateTime", () -> LocalDateTime.now(), LocalDateTime.class); // 起始版本 3.3.3(推荐) // // 或者 // this.fillStrategy(metaObject, "updateTime", LocalDateTime.now()); // 也可以使用(3.3.0 该方法有bug) this.setFieldValByName("updateTime",new Date(),metaObject); }