|
@@ -1,115 +1,115 @@
|
|
|
-package io.github.pnoker.gateway.config;
|
|
|
-
|
|
|
-import com.zaxxer.hikari.HikariConfig;
|
|
|
-import com.zaxxer.hikari.HikariDataSource;
|
|
|
-import io.github.pnoker.gateway.dbdao.DBMgrProxy;
|
|
|
-import org.apache.ibatis.session.SqlSessionFactory;
|
|
|
-import org.mybatis.spring.SqlSessionFactoryBean;
|
|
|
-import org.mybatis.spring.SqlSessionTemplate;
|
|
|
-import org.mybatis.spring.annotation.MapperScan;
|
|
|
-import org.springframework.beans.factory.annotation.Qualifier;
|
|
|
-import org.springframework.beans.factory.annotation.Value;
|
|
|
-import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
|
|
|
-import org.springframework.context.annotation.Bean;
|
|
|
-import org.springframework.context.annotation.Configuration;
|
|
|
-import org.springframework.jdbc.datasource.DataSourceTransactionManager;
|
|
|
-
|
|
|
-import javax.annotation.PostConstruct;
|
|
|
-import javax.sql.DataSource;
|
|
|
-
|
|
|
-@Configuration
|
|
|
-@MapperScan(basePackages = {"io.github.pnoker.gateway.dbdao.mapper",
|
|
|
- "io.github.pnoker.gateway.dbdao.tangyinSource.mapper"}, sqlSessionTemplateRef = "child4SqlSessionTemplate")
|
|
|
-public class Child4SourceConfiguration {
|
|
|
- @Value("${spring.datasource.child4pg.driver-class-name:}")
|
|
|
- private String driveClass = "org.postgresql.Driver";
|
|
|
-
|
|
|
- @Value("${spring.datasource.child4pg.jdbc-url:}")
|
|
|
- private String url = "";
|
|
|
-
|
|
|
- @Value("${spring.datasource.child4pg.username:}")
|
|
|
- private String username = "";
|
|
|
-
|
|
|
- @Value("${spring.datasource.child4pg.password:}")
|
|
|
- private String password = "";
|
|
|
-
|
|
|
- @Value("${spring.datasource.data.maximum-pool-size:200}")
|
|
|
- private Integer maxPoolSize;
|
|
|
-
|
|
|
- @Value("${spring.datasource.data.minimum-idle:1}")
|
|
|
- private Integer minIdle;
|
|
|
-
|
|
|
- @Value("${spring.datasource.data.connection-test-query:}")
|
|
|
- private String connectionTestQuery;
|
|
|
-
|
|
|
- @Value("${spring.datasource.data.max-lifetime:120000}")
|
|
|
- private Long maxLifetime;
|
|
|
-
|
|
|
- @Value("${spring.datasource.data.idle-timeout:30000}")
|
|
|
- private Long idleTimeout;
|
|
|
-
|
|
|
- @Value("${spring.datasource.data.connection-timeout:30000}")
|
|
|
- private Long connectionTimeout;
|
|
|
-
|
|
|
- @Value("${spring.datasource.data.validation-timeout:30000}")
|
|
|
- private Long validTimeout;
|
|
|
-
|
|
|
- @Bean(name = "child4Datasource")
|
|
|
- //@ConfigurationProperties(prefix = "spring.datasource.data")
|
|
|
- public DataSource mainDataSource() {
|
|
|
- return new HikariDataSource(getConfig());
|
|
|
- //return DataSourceBuilder.create().build();
|
|
|
- //Spring Boot 2.x默认使用HikariCP
|
|
|
- }
|
|
|
-
|
|
|
- private HikariConfig getConfig() {
|
|
|
- HikariConfig hikariConfig = new HikariConfig();
|
|
|
- hikariConfig.setDriverClassName(driveClass);
|
|
|
- hikariConfig.setJdbcUrl(url);
|
|
|
- hikariConfig.setUsername(username);
|
|
|
- hikariConfig.setPassword(password);
|
|
|
-
|
|
|
- hikariConfig.setMaximumPoolSize(maxPoolSize);
|
|
|
- hikariConfig.setMinimumIdle(minIdle);
|
|
|
- hikariConfig.setConnectionTestQuery(connectionTestQuery);
|
|
|
- hikariConfig.setMaxLifetime(maxLifetime);
|
|
|
- hikariConfig.setIdleTimeout(idleTimeout);
|
|
|
- hikariConfig.setConnectionTimeout(connectionTimeout);
|
|
|
- hikariConfig.setValidationTimeout(validTimeout);
|
|
|
- return hikariConfig;
|
|
|
- }
|
|
|
-
|
|
|
- @Bean("child4SqlSessionFactory")
|
|
|
- public SqlSessionFactory child4SqlSessionFactoryBean(@Qualifier("child4Datasource") DataSource dataSource) throws Exception {
|
|
|
- SqlSessionFactoryBean sessionFactoryBean = new SqlSessionFactoryBean();
|
|
|
- sessionFactoryBean.setDataSource(dataSource);
|
|
|
-
|
|
|
- org.apache.ibatis.session.Configuration configuration = new org.apache.ibatis.session.Configuration();
|
|
|
- configuration.setCallSettersOnNulls(true); //数据库中字段值为null时也要求返回
|
|
|
- configuration.setMapUnderscoreToCamelCase(true); //开启驼峰映射
|
|
|
- configuration.setCacheEnabled(false);
|
|
|
- sessionFactoryBean.setConfiguration(configuration);
|
|
|
- return sessionFactoryBean.getObject();
|
|
|
- }
|
|
|
-
|
|
|
- @Bean("child4SqlSessionTemplate")
|
|
|
- public SqlSessionTemplate child4SqlSessionTemplate(@Qualifier("child4SqlSessionFactory") SqlSessionFactory sessionFactory) {
|
|
|
- return new SqlSessionTemplate(sessionFactory);
|
|
|
- }
|
|
|
-
|
|
|
- @Bean(name = "child4DbTransactionManager")
|
|
|
- public DataSourceTransactionManager child4DbTransactionManager(@Qualifier("child4Datasource") DataSource dataSource){
|
|
|
- return new DataSourceTransactionManager(dataSource);
|
|
|
- }
|
|
|
-
|
|
|
- @PostConstruct
|
|
|
- public void init(){
|
|
|
- GlobalData.getInstance().setPostGisValid("org.postgis.DriverWrapper".equals(driveClass));
|
|
|
- }
|
|
|
-
|
|
|
- @Bean
|
|
|
- public DBMgrProxy startDBMgrProxy(){
|
|
|
- DBMgrProxy.getInstance().init();
|
|
|
- return DBMgrProxy.getInstance();
|
|
|
- }
|
|
|
-}
|
|
|
+//package io.github.pnoker.gateway.config;
|
|
|
+//
|
|
|
+//import com.zaxxer.hikari.HikariConfig;
|
|
|
+//import com.zaxxer.hikari.HikariDataSource;
|
|
|
+//import io.github.pnoker.gateway.dbdao.DBMgrProxy;
|
|
|
+//import org.apache.ibatis.session.SqlSessionFactory;
|
|
|
+//import org.mybatis.spring.SqlSessionFactoryBean;
|
|
|
+//import org.mybatis.spring.SqlSessionTemplate;
|
|
|
+//import org.mybatis.spring.annotation.MapperScan;
|
|
|
+//import org.springframework.beans.factory.annotation.Qualifier;
|
|
|
+//import org.springframework.beans.factory.annotation.Value;
|
|
|
+//import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
|
|
|
+//import org.springframework.context.annotation.Bean;
|
|
|
+//import org.springframework.context.annotation.Configuration;
|
|
|
+//import org.springframework.jdbc.datasource.DataSourceTransactionManager;
|
|
|
+//
|
|
|
+//import javax.annotation.PostConstruct;
|
|
|
+//import javax.sql.DataSource;
|
|
|
+//
|
|
|
+//@Configuration
|
|
|
+//@MapperScan(basePackages = {"io.github.pnoker.gateway.dbdao.mapper",
|
|
|
+// "io.github.pnoker.gateway.dbdao.tangyinSource.mapper"}, sqlSessionTemplateRef = "child4SqlSessionTemplate")
|
|
|
+//public class Child4SourceConfiguration {
|
|
|
+// @Value("${spring.datasource.child4pg.driver-class-name:}")
|
|
|
+// private String driveClass = "org.postgresql.Driver";
|
|
|
+//
|
|
|
+// @Value("${spring.datasource.child4pg.jdbc-url:}")
|
|
|
+// private String url = "";
|
|
|
+//
|
|
|
+// @Value("${spring.datasource.child4pg.username:}")
|
|
|
+// private String username = "";
|
|
|
+//
|
|
|
+// @Value("${spring.datasource.child4pg.password:}")
|
|
|
+// private String password = "";
|
|
|
+//
|
|
|
+// @Value("${spring.datasource.data.maximum-pool-size:200}")
|
|
|
+// private Integer maxPoolSize;
|
|
|
+//
|
|
|
+// @Value("${spring.datasource.data.minimum-idle:1}")
|
|
|
+// private Integer minIdle;
|
|
|
+//
|
|
|
+// @Value("${spring.datasource.data.connection-test-query:}")
|
|
|
+// private String connectionTestQuery;
|
|
|
+//
|
|
|
+// @Value("${spring.datasource.data.max-lifetime:120000}")
|
|
|
+// private Long maxLifetime;
|
|
|
+//
|
|
|
+// @Value("${spring.datasource.data.idle-timeout:30000}")
|
|
|
+// private Long idleTimeout;
|
|
|
+//
|
|
|
+// @Value("${spring.datasource.data.connection-timeout:30000}")
|
|
|
+// private Long connectionTimeout;
|
|
|
+//
|
|
|
+// @Value("${spring.datasource.data.validation-timeout:30000}")
|
|
|
+// private Long validTimeout;
|
|
|
+//
|
|
|
+// @Bean(name = "child4Datasource")
|
|
|
+// //@ConfigurationProperties(prefix = "spring.datasource.data")
|
|
|
+// public DataSource mainDataSource() {
|
|
|
+// return new HikariDataSource(getConfig());
|
|
|
+// //return DataSourceBuilder.create().build();
|
|
|
+// //Spring Boot 2.x默认使用HikariCP
|
|
|
+// }
|
|
|
+//
|
|
|
+// private HikariConfig getConfig() {
|
|
|
+// HikariConfig hikariConfig = new HikariConfig();
|
|
|
+// hikariConfig.setDriverClassName(driveClass);
|
|
|
+// hikariConfig.setJdbcUrl(url);
|
|
|
+// hikariConfig.setUsername(username);
|
|
|
+// hikariConfig.setPassword(password);
|
|
|
+//
|
|
|
+// hikariConfig.setMaximumPoolSize(maxPoolSize);
|
|
|
+// hikariConfig.setMinimumIdle(minIdle);
|
|
|
+// hikariConfig.setConnectionTestQuery(connectionTestQuery);
|
|
|
+// hikariConfig.setMaxLifetime(maxLifetime);
|
|
|
+// hikariConfig.setIdleTimeout(idleTimeout);
|
|
|
+// hikariConfig.setConnectionTimeout(connectionTimeout);
|
|
|
+// hikariConfig.setValidationTimeout(validTimeout);
|
|
|
+// return hikariConfig;
|
|
|
+// }
|
|
|
+//
|
|
|
+// @Bean("child4SqlSessionFactory")
|
|
|
+// public SqlSessionFactory child4SqlSessionFactoryBean(@Qualifier("child4Datasource") DataSource dataSource) throws Exception {
|
|
|
+// SqlSessionFactoryBean sessionFactoryBean = new SqlSessionFactoryBean();
|
|
|
+// sessionFactoryBean.setDataSource(dataSource);
|
|
|
+//
|
|
|
+// org.apache.ibatis.session.Configuration configuration = new org.apache.ibatis.session.Configuration();
|
|
|
+// configuration.setCallSettersOnNulls(true); //数据库中字段值为null时也要求返回
|
|
|
+// configuration.setMapUnderscoreToCamelCase(true); //开启驼峰映射
|
|
|
+// configuration.setCacheEnabled(false);
|
|
|
+// sessionFactoryBean.setConfiguration(configuration);
|
|
|
+// return sessionFactoryBean.getObject();
|
|
|
+// }
|
|
|
+//
|
|
|
+// @Bean("child4SqlSessionTemplate")
|
|
|
+// public SqlSessionTemplate child4SqlSessionTemplate(@Qualifier("child4SqlSessionFactory") SqlSessionFactory sessionFactory) {
|
|
|
+// return new SqlSessionTemplate(sessionFactory);
|
|
|
+// }
|
|
|
+//
|
|
|
+// @Bean(name = "child4DbTransactionManager")
|
|
|
+// public DataSourceTransactionManager child4DbTransactionManager(@Qualifier("child4Datasource") DataSource dataSource){
|
|
|
+// return new DataSourceTransactionManager(dataSource);
|
|
|
+// }
|
|
|
+//
|
|
|
+// @PostConstruct
|
|
|
+// public void init(){
|
|
|
+// GlobalData.getInstance().setPostGisValid("org.postgis.DriverWrapper".equals(driveClass));
|
|
|
+// }
|
|
|
+//
|
|
|
+// @Bean
|
|
|
+// public DBMgrProxy startDBMgrProxy(){
|
|
|
+// DBMgrProxy.getInstance().init();
|
|
|
+// return DBMgrProxy.getInstance();
|
|
|
+// }
|
|
|
+//}
|