From 4b7a383fa0a2b3ba022bc0eb0e4083ac9fb54627 Mon Sep 17 00:00:00 2001 From: liyongde <1419499670@qq.com> Date: Thu, 29 Dec 2022 17:43:13 +0800 Subject: [PATCH] =?UTF-8?q?mybatis=E9=85=8D=E7=BD=AE=E6=96=87=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../nl/config/mybatis/MybatisPlusConfig.java | 31 +++++++++++++++++++ .../service/dict/impl/SysDictServiceImpl.java | 10 +++--- 2 files changed, 37 insertions(+), 4 deletions(-) create mode 100644 lms/nladmin-system/src/main/java/org/nl/config/mybatis/MybatisPlusConfig.java diff --git a/lms/nladmin-system/src/main/java/org/nl/config/mybatis/MybatisPlusConfig.java b/lms/nladmin-system/src/main/java/org/nl/config/mybatis/MybatisPlusConfig.java new file mode 100644 index 000000000..6b57662f4 --- /dev/null +++ b/lms/nladmin-system/src/main/java/org/nl/config/mybatis/MybatisPlusConfig.java @@ -0,0 +1,31 @@ +package org.nl.config.mybatis; + +import com.baomidou.mybatisplus.annotation.DbType; +import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor; +import com.baomidou.mybatisplus.extension.plugins.inner.OptimisticLockerInnerInterceptor; +import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.transaction.annotation.EnableTransactionManagement; + +@EnableTransactionManagement +@Configuration +public class MybatisPlusConfig { + + /** + * 新的分页插件,一缓和二缓遵循mybatis的规则,需要设置 MybatisConfiguration#useDeprecatedExecutor = false 避免缓存出现问题(该属性会在旧插件移除后一同移除) + 添加自增插件 + */ + @Bean + public MybatisPlusInterceptor mybatisPlusInterceptor() { + + MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor(); + // 分页插件 + interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL)); + //乐观锁插件 + interceptor.addInnerInterceptor(new OptimisticLockerInnerInterceptor()); + + return interceptor; + } + +} diff --git a/lms/nladmin-system/src/main/java/org/nl/system/service/dict/impl/SysDictServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/system/service/dict/impl/SysDictServiceImpl.java index d0bac39ee..bc8d9c404 100644 --- a/lms/nladmin-system/src/main/java/org/nl/system/service/dict/impl/SysDictServiceImpl.java +++ b/lms/nladmin-system/src/main/java/org/nl/system/service/dict/impl/SysDictServiceImpl.java @@ -41,14 +41,16 @@ public class SysDictServiceImpl extends ServiceImpl impleme public IPage queryAll(Map whereJson, PageQuery page) { String blurry = null; if (ObjectUtil.isNotEmpty(whereJson.get("blurry"))) blurry = whereJson.get("blurry").toString(); - IPage pages = this.page(new Page<>(page.getPage() + 1, page.getSize()), new QueryWrapper() - .select("MAX(dict_id) AS dictId, code, name") + IPage pages = new Page<>(page.getPage() + 1, page.getSize()); + QueryWrapper lam = new QueryWrapper<>(); + lam.select("MAX(dict_id) AS dictId, code, name") .lambda() .like(ObjectUtil.isNotEmpty(blurry), Dict::getCode, blurry) .or(ObjectUtil.isNotEmpty(blurry)) .like(ObjectUtil.isNotEmpty(blurry), Dict::getName, blurry) - .orderBy(true, true, Dict::getCode) - .groupBy(Dict::getCode, Dict::getName)); + .orderBy(true, true, Dict::getCode) + .groupBy(Dict::getCode, Dict::getName); + sysDictMapper.selectPage(pages, lam); return pages; }