| 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 com.ruoyi.system.api.config.DataUpdateHandlerConfig dataUpdateHandler; | 
|   | 
|     @Autowired | 
|     public MybatisPlusConfig(com.ruoyi.system.api.config.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; | 
|     } | 
|   | 
|   | 
| } |