From 50240b4e393f0792609e3843c98735fbe5fce82c Mon Sep 17 00:00:00 2001
From: 648540858 <648540858@qq.com>
Date: 星期二, 30 五月 2023 10:32:08 +0800
Subject: [PATCH] 移除手动配置mybatis下划线转驼峰

---
 src/main/java/com/genersoft/iot/vmp/conf/MybatisConfig.java |   36 ++++++++++++++++++++++++++++++++++++
 doc/_content/introduction/config.md                         |    8 ++------
 src/main/java/com/genersoft/iot/vmp/conf/UserSetting.java   |    9 +++++++++
 src/main/resources/all-application.yml                      |    2 ++
 4 files changed, 49 insertions(+), 6 deletions(-)

diff --git a/doc/_content/introduction/config.md b/doc/_content/introduction/config.md
index 26fa80c..9e8ac0f 100644
--- a/doc/_content/introduction/config.md
+++ b/doc/_content/introduction/config.md
@@ -58,9 +58,7 @@
     url: jdbc:postgresql://127.0.0.1:3306/wvp?useUnicode=true&characterEncoding=UTF8&rewriteBatchedStatements=true&serverTimezone=PRC&useSSL=false&allowMultiQueries=true&allowPublicKeyRetrieval=true
     username: root
     password: 12345678
-mybatis:
-  configuration:
-    map-underscore-to-camel-case: true
+
 pagehelper:
   helper-dialect: postgresql
 ```
@@ -74,9 +72,7 @@
     url: jdbc:kingbase8://127.0.0.1:3306/wvp?useUnicode=true&characterEncoding=utf8
     username: root
     password: 12345678
-mybatis:
-  configuration:
-    map-underscore-to-camel-case: true
+
 pagehelper:
   helper-dialect: postgresql
 ```
diff --git a/src/main/java/com/genersoft/iot/vmp/conf/MybatisConfig.java b/src/main/java/com/genersoft/iot/vmp/conf/MybatisConfig.java
new file mode 100644
index 0000000..03ef099
--- /dev/null
+++ b/src/main/java/com/genersoft/iot/vmp/conf/MybatisConfig.java
@@ -0,0 +1,36 @@
+package com.genersoft.iot.vmp.conf;
+
+import org.apache.ibatis.logging.stdout.StdOutImpl;
+import org.apache.ibatis.session.SqlSessionFactory;
+import org.mybatis.spring.SqlSessionFactoryBean;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.core.annotation.Order;
+
+import javax.sql.DataSource;
+
+/**
+ * 閰嶇疆mybatis
+ */
+@Configuration
+@Order(value=1)
+public class MybatisConfig {
+
+    @Autowired
+    private UserSetting userSetting;
+
+    @Bean
+    public SqlSessionFactory sqlSessionFactory(DataSource dataSource) throws Exception {
+       final SqlSessionFactoryBean sqlSessionFactory = new SqlSessionFactoryBean();
+        sqlSessionFactory.setDataSource(dataSource);
+        org.apache.ibatis.session.Configuration config = new org.apache.ibatis.session.Configuration();
+        if (userSetting.getSqlLog()){
+            config.setLogImpl(StdOutImpl.class);
+        }
+        config.setMapUnderscoreToCamelCase(true);
+        sqlSessionFactory.setConfiguration(config);
+        return sqlSessionFactory.getObject();
+    }
+
+}
diff --git a/src/main/java/com/genersoft/iot/vmp/conf/UserSetting.java b/src/main/java/com/genersoft/iot/vmp/conf/UserSetting.java
index 64610a6..0b35a9d 100644
--- a/src/main/java/com/genersoft/iot/vmp/conf/UserSetting.java
+++ b/src/main/java/com/genersoft/iot/vmp/conf/UserSetting.java
@@ -48,6 +48,7 @@
     private Boolean syncChannelOnDeviceOnline = Boolean.FALSE;
 
     private Boolean sipLog = Boolean.FALSE;
+    private Boolean sqlLog = Boolean.FALSE;
     private Boolean sendToPlatformsWhenIdLost = Boolean.FALSE;
 
     private Boolean refuseChannelStatusChannelFormNotify = Boolean.FALSE;
@@ -286,4 +287,12 @@
     public void setUseCustomSsrcForParentInvite(Boolean useCustomSsrcForParentInvite) {
         this.useCustomSsrcForParentInvite = useCustomSsrcForParentInvite;
     }
+
+    public Boolean getSqlLog() {
+        return sqlLog;
+    }
+
+    public void setSqlLog(Boolean sqlLog) {
+        this.sqlLog = sqlLog;
+    }
 }
diff --git a/src/main/resources/all-application.yml b/src/main/resources/all-application.yml
index 2d20edd..def2a3c 100644
--- a/src/main/resources/all-application.yml
+++ b/src/main/resources/all-application.yml
@@ -194,6 +194,8 @@
     sip-use-source-ip-as-remote-address: false
     # 鏄惁寮�鍚痵ip鏃ュ織
     sip-log: true
+    # 鏄惁寮�鍚痵ql鏃ュ織
+    sql-log: true
     # 娑堟伅閫氶亾鍔熻兘-缂哄皯鍥芥爣ID鏄惁缁欐墍鏈変笂绾у彂閫佹秷鎭�
     send-to-platforms-when-id-lost: true
     # 淇濇寔閫氶亾鐘舵�侊紝涓嶆帴鍙梟otify閫氶亾鐘舵�佸彉鍖栵紝 鍏煎娴峰悍骞冲彴鍙戦�侀敊璇秷鎭�

--
Gitblit v1.8.0