1、分页配置
@Bean
public MybatisPlusInterceptor innerInterceptor(){
MybatisPlusInterceptor mybatisPlusInterceptor = new MybatisPlusInterceptor();
mybatisPlusInterceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL));
return mybatisPlusInterceptor;
}
2.1、 创建时间和更新时间自动填充
/**
* 自动填充功能
*/
@Bean
public GlobalConfig globalConfig() {
GlobalConfig globalConfig = new GlobalConfig();
globalConfig.setMetaObjectHandler(new MetaHandler());
return globalConfig;
}
2.2、handler配置
import com.baomidou.mybatisplus.core.handlers.MetaObjectHandler;
import org.apache.ibatis.reflection.MetaObject;
import org.springframework.stereotype.Component;
import java.util.Date;
@Component
public class MetaHandler implements MetaObjectHandler {
/**
* 新增数据执行
*/
@Override
public void insertFill(MetaObject metaObject) {
boolean hasSetter = metaObject.hasSetter("createDate");
if (hasSetter) {
this.setFieldValByName("createDate", new Date(), metaObject);
this.setFieldValByName("modifyDate", new Date(), metaObject);
}
}
/**
* 更新数据执行
*/
@Override
public void updateFill(MetaObject metaObject) {
Object val = getFieldValByName("modifyDate", metaObject);
if (val == null) {
this.setFieldValByName("modifyDate", new Date(), metaObject);
}
}
}
注:如果你的实体中日期是Date() 类型,上面 就用new Date(), 如果是LocalDateTime类型,就把new Date() 替换为 LocalDateTIme.now();
2.3、实体对象中加上注解即可
@ApiModelProperty(value = "创建时间")
@JsonFormat(locale = "zh", timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
@TableField(fill = FieldFill.INSERT)
private Date createDate;
@ApiModelProperty(value = "修改时间")
@JsonFormat(locale = "zh", timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
@TableField(fill = FieldFill.INSERT_UPDATE)
private Date modifyDate;