From 7e818d0c0747ef9560da4ad87226324fc9526ba9 Mon Sep 17 00:00:00 2001 From: 648540858 <648540858@qq.com> Date: Tue, 30 May 2023 10:32:08 +0800 Subject: [PATCH] =?UTF-8?q?=E7=A7=BB=E9=99=A4=E6=89=8B=E5=8A=A8=E9=85=8D?= =?UTF-8?q?=E7=BD=AEmybatis=E4=B8=8B=E5=88=92=E7=BA=BF=E8=BD=AC=E9=A9=BC?= =?UTF-8?q?=E5=B3=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- doc/_content/introduction/config.md | 8 ++--- .../genersoft/iot/vmp/conf/MybatisConfig.java | 36 +++++++++++++++++++ .../genersoft/iot/vmp/conf/UserSetting.java | 9 +++++ src/main/resources/all-application.yml | 2 ++ 4 files changed, 49 insertions(+), 6 deletions(-) create mode 100644 src/main/java/com/genersoft/iot/vmp/conf/MybatisConfig.java diff --git a/doc/_content/introduction/config.md b/doc/_content/introduction/config.md index 26fa80ce..9e8ac0f6 100644 --- a/doc/_content/introduction/config.md +++ b/doc/_content/introduction/config.md @@ -58,9 +58,7 @@ spring: 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 @@ spring: 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 00000000..03ef0994 --- /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 64610a63..0b35a9d0 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 @@ public class UserSetting { 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 class UserSetting { 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 2d20edd5..def2a3c9 100644 --- a/src/main/resources/all-application.yml +++ b/src/main/resources/all-application.yml @@ -194,6 +194,8 @@ user-settings: sip-use-source-ip-as-remote-address: false # 是否开启sip日志 sip-log: true + # 是否开启sql日志 + sql-log: true # 消息通道功能-缺少国标ID是否给所有上级发送消息 send-to-platforms-when-id-lost: true # 保持通道状态,不接受notify通道状态变化, 兼容海康平台发送错误消息