From 6bb79064a8d717e191ceda7cb2dc1549d3613691 Mon Sep 17 00:00:00 2001
From: buhuazhen <hua100783@gmail.com>
Date: 星期二, 26 八月 2025 13:58:03 +0800
Subject: [PATCH] purchase添加类型 以及新增字典查询方法
---
ruoyi-framework/src/main/java/com/ruoyi/framework/config/MybatisPlusConfig.java | 62 +++++++++++++-----------------
1 files changed, 27 insertions(+), 35 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 cdf20bb..84e8879 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,57 +1,49 @@
package com.ruoyi.framework.config;
import com.baomidou.mybatisplus.annotation.DbType;
+import com.baomidou.mybatisplus.autoconfigure.ConfigurationCustomizer;
import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor;
import com.baomidou.mybatisplus.extension.plugins.inner.BlockAttackInnerInterceptor;
import com.baomidou.mybatisplus.extension.plugins.inner.OptimisticLockerInnerInterceptor;
import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor;
+import com.ruoyi.common.handler.LocalDateTimeTypeHandler;
+import org.apache.ibatis.type.JdbcType;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
-import org.springframework.transaction.annotation.EnableTransactionManagement;
-/**
- * Mybatis Plus 閰嶇疆
- *
- * @author ruoyi
- */
-@EnableTransactionManagement(proxyTargetClass = true)
@Configuration
public class MybatisPlusConfig {
+
@Bean
public MybatisPlusInterceptor mybatisPlusInterceptor() {
MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();
- // 鍒嗛〉鎻掍欢
- interceptor.addInnerInterceptor(paginationInnerInterceptor());
- // 涔愯閿佹彃浠�
- interceptor.addInnerInterceptor(optimisticLockerInnerInterceptor());
- // 闃绘柇鎻掍欢
- interceptor.addInnerInterceptor(blockAttackInnerInterceptor());
+ // 1. 鍒嗛〉鎻掍欢 - 鎸囧畾 PostgreSQL 鏁版嵁搴撶被鍨�
+ PaginationInnerInterceptor pagination = new PaginationInnerInterceptor(DbType.POSTGRE_SQL);
+ pagination.setOptimizeJoin(true); // 浼樺寲 JOIN 鏌ヨ
+ pagination.setMaxLimit(500L); // 璁剧疆鏈�澶у崟椤甸檺鍒�
+ interceptor.addInnerInterceptor(pagination);
+
+ // 2. 涔愯閿佹彃浠�
+ interceptor.addInnerInterceptor(new OptimisticLockerInnerInterceptor());
+
+ // 3. 闃叉鍏ㄨ〃鏇存柊/鍒犻櫎鎻掍欢
+ interceptor.addInnerInterceptor(new BlockAttackInnerInterceptor());
+
return interceptor;
}
- /**
- * 鍒嗛〉鎻掍欢锛岃嚜鍔ㄨ瘑鍒暟鎹簱绫诲瀷 https://baomidou.com/guide/interceptor-pagination.html
- */
- public PaginationInnerInterceptor paginationInnerInterceptor() {
- PaginationInnerInterceptor paginationInnerInterceptor = new PaginationInnerInterceptor();
- // 璁剧疆鏁版嵁搴撶被鍨嬩负mysql
- paginationInnerInterceptor.setDbType(DbType.MYSQL);
- // 璁剧疆鏈�澶у崟椤甸檺鍒舵暟閲忥紝榛樿 500 鏉★紝-1 涓嶅彈闄愬埗
- paginationInnerInterceptor.setMaxLimit(-1L);
- return paginationInnerInterceptor;
- }
+ // 4. 娣诲姞鍏ㄥ眬绫诲瀷澶勭悊鍣ㄩ厤缃�
+ @Bean
+ public ConfigurationCustomizer configurationCustomizer() {
+ return configuration -> {
+ // 娉ㄥ唽 LocalDateTime 绫诲瀷澶勭悊鍣�
+ configuration.getTypeHandlerRegistry().register(new LocalDateTimeTypeHandler());
- /**
- * 涔愯閿佹彃浠� https://baomidou.com/guide/interceptor-optimistic-locker.html
- */
- public OptimisticLockerInnerInterceptor optimisticLockerInnerInterceptor() {
- return new OptimisticLockerInnerInterceptor();
- }
+ // 璁剧疆绌哄�煎鐞嗙瓥鐣�
+ configuration.setJdbcTypeForNull(JdbcType.NULL);
- /**
- * 濡傛灉鏄鍏ㄨ〃鐨勫垹闄ゆ垨鏇存柊鎿嶄綔锛屽氨浼氱粓姝㈣鎿嶄綔 https://baomidou.com/guide/interceptor-block-attack.html
- */
- public BlockAttackInnerInterceptor blockAttackInnerInterceptor() {
- return new BlockAttackInnerInterceptor();
+ // 鍚敤鑷姩椹煎嘲鍛藉悕瑙勫垯鏄犲皠
+ configuration.setMapUnderscoreToCamelCase(true);
+ };
}
}
\ No newline at end of file
--
Gitblit v1.9.3