package com.ruoyi.system.api.config; import com.baomidou.mybatisplus.annotation.DbType; import com.baomidou.mybatisplus.core.config.GlobalConfig; import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor; import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; /** * @author xiaochen * @ClassName MybatisPlusConfig * @Description MybatisPlus相关配置 * @date 2020-09-22 11:22、 * 直接以实现类作为bean的注入(有事务管理的类) * @EnableTransactionManagement(proxyTargetClass = true) */ @Configuration public class MybatisPlusConfig { private final DataUpdateHandlerConfig dataUpdateHandler; @Autowired public MybatisPlusConfig(DataUpdateHandlerConfig dataUpdateHandler) { this.dataUpdateHandler = dataUpdateHandler; } /** * 新的分页插件,一缓和二缓遵循mybatis的规则,需要设置 MybatisConfiguration#useDeprecatedExecutor = false 避免缓存出现问题 */ @Bean public MybatisPlusInterceptor mybatisPlusInterceptor() { MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor(); interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL)); return interceptor; } /** * 自动填充功能 * * @return */ @Bean public GlobalConfig globalConfig() { GlobalConfig globalConfig = new GlobalConfig(); globalConfig.setMetaObjectHandler(dataUpdateHandler); return globalConfig; } }