From 3d6fbb93f56d5221661f7899a00c5a70072e5ee5 Mon Sep 17 00:00:00 2001 From: wugh <328043740@qq.com> Date: 星期一, 22 三月 2021 09:32:49 +0800 Subject: [PATCH] !11 [功能] 拆分出Vo,QueryBo,AddBo,EditBo等领域对象 * [修改] 错误引入的无用导包删除 * [新增] 增加Vo,QueryBo,AddBo,EditBo等视图,并调整controller,service的调用代码 * [新增] 增加CreateAndUpdateMetaObjectHandler,配合fill注解,实现创建和修改人的自动设置,减少重复代码 --- ruoyi-framework/src/main/java/com/ruoyi/framework/config/MybatisPlusConfig.java | 70 ++++++++++++++++++++++++++++++++-- 1 files changed, 65 insertions(+), 5 deletions(-) diff --git a/ruoyi-framework/src/main/java/com/ruoyi/framework/config/MybatisPlusConfig.java b/ruoyi-framework/src/main/java/com/ruoyi/framework/config/MybatisPlusConfig.java index c335d1b..fb9c7f7 100644 --- a/ruoyi-framework/src/main/java/com/ruoyi/framework/config/MybatisPlusConfig.java +++ b/ruoyi-framework/src/main/java/com/ruoyi/framework/config/MybatisPlusConfig.java @@ -1,9 +1,18 @@ package com.ruoyi.framework.config; +import com.baomidou.mybatisplus.annotation.DbType; +import com.baomidou.mybatisplus.core.handlers.MetaObjectHandler; +import com.baomidou.mybatisplus.core.incrementer.IKeyGenerator; +import com.baomidou.mybatisplus.core.incrementer.IdentifierGenerator; +import com.baomidou.mybatisplus.core.injector.DefaultSqlInjector; +import com.baomidou.mybatisplus.core.injector.ISqlInjector; +import com.baomidou.mybatisplus.extension.incrementer.H2KeyGenerator; +import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor; import com.baomidou.mybatisplus.extension.plugins.inner.BlockAttackInnerInterceptor; import com.baomidou.mybatisplus.extension.plugins.inner.IllegalSQLInnerInterceptor; import com.baomidou.mybatisplus.extension.plugins.inner.OptimisticLockerInnerInterceptor; import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor; +import com.ruoyi.framework.mybatisplus.CreateAndUpdateMetaObjectHandler; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.transaction.annotation.EnableTransactionManagement; @@ -12,26 +21,43 @@ @Configuration public class MybatisPlusConfig { + @Bean + public MybatisPlusInterceptor mybatisPlusInterceptor() { + MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor(); + // 鍒嗛〉鎻掍欢 + interceptor.addInnerInterceptor(paginationInnerInterceptor()); + // 涔愯閿佹彃浠� + interceptor.addInnerInterceptor(optimisticLockerInnerInterceptor()); + // 闃绘柇鎻掍欢 + interceptor.addInnerInterceptor(blockAttackInnerInterceptor()); + return interceptor; + } + /** * 鍒嗛〉鎻掍欢锛岃嚜鍔ㄨ瘑鍒暟鎹簱绫诲瀷 + * https://baomidou.com/guide/interceptor-pagination.html */ - @Bean public PaginationInnerInterceptor paginationInnerInterceptor() { - return new PaginationInnerInterceptor(); + PaginationInnerInterceptor paginationInnerInterceptor = new PaginationInnerInterceptor(); + // 璁剧疆鏁版嵁搴撶被鍨嬩负mysql + paginationInnerInterceptor.setDbType(DbType.MYSQL); + // 璁剧疆鏈�澶у崟椤甸檺鍒舵暟閲忥紝榛樿 500 鏉★紝-1 涓嶅彈闄愬埗 + paginationInnerInterceptor.setMaxLimit(-1L); + return paginationInnerInterceptor; } /** * 涔愯閿佹彃浠� + * https://baomidou.com/guide/interceptor-optimistic-locker.html */ - @Bean public OptimisticLockerInnerInterceptor optimisticLockerInnerInterceptor() { return new OptimisticLockerInnerInterceptor(); } /** * 濡傛灉鏄鍏ㄨ〃鐨勫垹闄ゆ垨鏇存柊鎿嶄綔锛屽氨浼氱粓姝㈣鎿嶄綔 + * https://baomidou.com/guide/interceptor-block-attack.html */ - @Bean public BlockAttackInnerInterceptor blockAttackInnerInterceptor() { return new BlockAttackInnerInterceptor(); } @@ -40,9 +66,43 @@ * sql鎬ц兘瑙勮寖鎻掍欢(鍨冨溇SQL鎷︽埅) * 濡傛湁闇�瑕佸彲浠ュ惎鐢� */ -// @Bean // public IllegalSQLInnerInterceptor illegalSQLInnerInterceptor() { // return new IllegalSQLInnerInterceptor(); // } + + /** + * 鑷畾涔変富閿瓥鐣� + * https://baomidou.com/guide/id-generator.html + */ +// @Bean +// public IdentifierGenerator idGenerator() { +// return new CustomIdGenerator(); +// } + + /** + * 鍏冨璞″瓧娈靛~鍏呮帶鍒跺櫒 + * https://baomidou.com/guide/auto-fill-metainfo.html + */ + @Bean + public MetaObjectHandler metaObjectHandler() { + return new CreateAndUpdateMetaObjectHandler(); + } + + /** + * sql娉ㄥ叆鍣ㄩ厤缃� + * https://baomidou.com/guide/sql-injector.html + */ +// @Bean +// public ISqlInjector sqlInjector() { +// return new DefaultSqlInjector(); +// } + + /** + * TenantLineInnerInterceptor 澶氱鎴锋彃浠� + * https://baomidou.com/guide/interceptor-tenant-line.html + * DynamicTableNameInnerInterceptor 鍔ㄦ�佽〃鍚嶆彃浠� + * https://baomidou.com/guide/interceptor-dynamic-table-name.html + */ + } -- Gitblit v1.9.3