Added NBCH datasource for SOURCE table (bus_category searching)
This commit is contained in:
parent
c3abd1ef6c
commit
f734f9147b
7 changed files with 140 additions and 0 deletions
|
|
@ -48,6 +48,20 @@ ct.scoring-data-source-settings.max-lifetime=${MAX_LIFETIME_SCORING:1800000}
|
|||
ct.scoring-data-source-settings.keepalive-time=${KEEPALIVE_TIME_SCORING:0}
|
||||
ct.scoring-data-source-settings.leak-detection-threshold=${LEAK_DETECTION_THRESHOLD_SCORING:0}
|
||||
|
||||
# nbch
|
||||
ct.nbch-data-source-settings.driver=com.ibm.db2.jcc.DB2Driver
|
||||
ct.nbch-data-source-settings.url=${DB_URL_NBCH:jdbc:db2://10.230.227.102:2668/cprosd22:currentSchema=NBCH;}
|
||||
ct.nbch-data-source-settings.username=${USERNAME_NBCH:ros9appl}
|
||||
ct.nbch-data-source-settings.password=${PASSWORD_NBCH:R0s9Appl}
|
||||
ct.nbch-data-source-settings.maximum-pool-size=${MAXIMUM_POOL_SIZE_NBCH:30}
|
||||
ct.nbch-data-source-settings.minimum-idle=${MINIMUM_IDLE_NBCH:10}
|
||||
ct.nbch-data-source-settings.connection-timeout=${CONNECTION_TIMEOUT_NBCH:10000}
|
||||
ct.nbch-data-source-settings.validation-timeout=${VALIDATION_TIMEOUT_NBCH:5000}
|
||||
ct.nbch-data-source-settings.idle-timeout=${IDLE_TIMEOUT_NBCH:600000}
|
||||
ct.nbch-data-source-settings.max-lifetime=${MAX_LIFETIME_NBCH:1800000}
|
||||
ct.nbch-data-source-settings.keepalive-time=${KEEPALIVE_TIME_NBCH:0}
|
||||
ct.nbch-data-source-settings.leak-detection-threshold=${LEAK_DETECTION_THRESHOLD_NBCH:0}
|
||||
|
||||
ct.max_xml_file_size=${ACCEPTED_XML_SIZE:1024}
|
||||
spring.servlet.multipart.max-file-size=${ACCEPTED_ARCHIVE_SIZE:2048MB}
|
||||
spring.servlet.multipart.max-request-size=${ACCEPTED_ARCHIVE_SIZE:2048MB}
|
||||
|
|
|
|||
|
|
@ -62,6 +62,19 @@ MAX_LIFETIME_SCORING=1800000
|
|||
KEEPALIVE_TIME_SCORING=0
|
||||
LEAK_DETECTION_THRESHOLD_SCORING=0
|
||||
|
||||
# nbch
|
||||
DB_URL_NBCH=jdbc:db2://10.230.227.102:2668/cprosd22:currentSchema=NBCH;
|
||||
USERNAME_NBCH=ros9appl
|
||||
PASSWORD_NBCH=R0s9Appl
|
||||
MAXIMUM_POOL_SIZE_NBCH=30
|
||||
MINIMUM_IDLE_NBCH=10
|
||||
CONNECTION_TIMEOUT_NBCH=10000
|
||||
VALIDATION_TIMEOUT_NBCH=5000
|
||||
IDLE_TIMEOUT_NBCH=600000
|
||||
MAX_LIFETIME_NBCH=1800000
|
||||
KEEPALIVE_TIME_NBCH=0
|
||||
LEAK_DETECTION_THRESHOLD_NBCH=0
|
||||
|
||||
# размер в mb
|
||||
ACCEPTED_XML_SIZE=1024
|
||||
ACCEPTED_ARCHIVE_SIZE=2048MB
|
||||
|
|
|
|||
|
|
@ -58,6 +58,17 @@ services:
|
|||
- MAX_LIFETIME_SCORING=${MAX_LIFETIME_SCORING}
|
||||
- KEEPALIVE_TIME_SCORING=${KEEPALIVE_TIME_SCORING}
|
||||
- LEAK_DETECTION_THRESHOLD_SCORING=${LEAK_DETECTION_THRESHOLD_SCORING}
|
||||
- DB_URL_NBCH=${DB_URL_NBCH}
|
||||
- USERNAME_NBCH=${USERNAME_NBCH}
|
||||
- PASSWORD_NBCH=${PASSWORD_NBCH}
|
||||
- MAXIMUM_POOL_SIZE_NBCH=${MAXIMUM_POOL_SIZE_NBCH}
|
||||
- MINIMUM_IDLE_NBCH=${MINIMUM_IDLE_NBCH}
|
||||
- CONNECTION_TIMEOUT_NBCH=${CONNECTION_TIMEOUT_NBCH}
|
||||
- VALIDATION_TIMEOUT_NBCH=${VALIDATION_TIMEOUT_NBCH}
|
||||
- IDLE_TIMEOUT_NBCH=${IDLE_TIMEOUT_NBCH}
|
||||
- MAX_LIFETIME_NBCH=${MAX_LIFETIME_NBCH}
|
||||
- KEEPALIVE_TIME_NBCH=${KEEPALIVE_TIME_NBCH}
|
||||
- LEAK_DETECTION_THRESHOLD_NBCH=${LEAK_DETECTION_THRESHOLD_NBCH}
|
||||
- ACCEPTED_XML_SIZE=${ACCEPTED_XML_SIZE}
|
||||
- ACCEPTED_ARCHIVE_SIZE=${ACCEPTED_ARCHIVE_SIZE}
|
||||
- SIGNALS_ROOT_URI=${SIGNALS_ROOT_URI}
|
||||
|
|
@ -142,6 +153,17 @@ services:
|
|||
- MAX_LIFETIME_SCORING=${MAX_LIFETIME_SCORING}
|
||||
- KEEPALIVE_TIME_SCORING=${KEEPALIVE_TIME_SCORING}
|
||||
- LEAK_DETECTION_THRESHOLD_SCORING=${LEAK_DETECTION_THRESHOLD_SCORING}
|
||||
- DB_URL_NBCH=${DB_URL_NBCH}
|
||||
- USERNAME_NBCH=${USERNAME_NBCH}
|
||||
- PASSWORD_NBCH=${PASSWORD_NBCH}
|
||||
- MAXIMUM_POOL_SIZE_NBCH=${MAXIMUM_POOL_SIZE_NBCH}
|
||||
- MINIMUM_IDLE_NBCH=${MINIMUM_IDLE_NBCH}
|
||||
- CONNECTION_TIMEOUT_NBCH=${CONNECTION_TIMEOUT_NBCH}
|
||||
- VALIDATION_TIMEOUT_NBCH=${VALIDATION_TIMEOUT_NBCH}
|
||||
- IDLE_TIMEOUT_NBCH=${IDLE_TIMEOUT_NBCH}
|
||||
- MAX_LIFETIME_NBCH=${MAX_LIFETIME_NBCH}
|
||||
- KEEPALIVE_TIME_NBCH=${KEEPALIVE_TIME_NBCH}
|
||||
- LEAK_DETECTION_THRESHOLD_NBCH=${LEAK_DETECTION_THRESHOLD_NBCH}
|
||||
- SIGNALS_ROOT_URI=${SIGNALS_ROOT_URI}
|
||||
- SIGNALS_TOKEN=${SIGNALS_TOKEN}
|
||||
- SIGNALS_USER=${SIGNALS_USER}
|
||||
|
|
|
|||
|
|
@ -0,0 +1,61 @@
|
|||
package ru.nbch.credit_tracker.config.datasource;
|
||||
|
||||
import com.zaxxer.hikari.HikariDataSource;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.ibatis.session.SqlSessionFactory;
|
||||
import org.mybatis.spring.SqlSessionFactoryBean;
|
||||
import org.mybatis.spring.annotation.MapperScan;
|
||||
import org.springframework.beans.factory.annotation.Qualifier;
|
||||
import org.springframework.beans.factory.annotation.Value;
|
||||
import org.springframework.context.annotation.Bean;
|
||||
import org.springframework.context.annotation.Configuration;
|
||||
import org.springframework.core.io.Resource;
|
||||
import ru.nbch.credit_tracker.config.settings.CreditTrackerSettings;
|
||||
import ru.nbch.credit_tracker.config.settings.DataSourceSettings;
|
||||
|
||||
import javax.sql.DataSource;
|
||||
import java.sql.Connection;
|
||||
import java.sql.SQLException;
|
||||
|
||||
@Slf4j
|
||||
@Configuration
|
||||
@MapperScan(
|
||||
basePackages = "ru.nbch.credit_tracker.mapper.nbch",
|
||||
sqlSessionFactoryRef = "sqlSessionNbch"
|
||||
)
|
||||
public class NbchDataSourceConfig extends DatabaseConfig {
|
||||
@Value("classpath:mybatis/mapper/nbch/*.xml")
|
||||
private Resource[] resources;
|
||||
|
||||
@Bean(name = "nbchDataSource")
|
||||
public DataSource dataSource(CreditTrackerSettings config) throws SQLException {
|
||||
DataSourceSettings signalSetings = config.getNbchDataSourceSettings();
|
||||
|
||||
HikariDataSource dataSource = createDataSource(signalSetings);
|
||||
dataSource.setMaximumPoolSize(signalSetings.maximumPoolSize());
|
||||
dataSource.setMinimumIdle(signalSetings.minimumIdle());
|
||||
dataSource.setConnectionTimeout(signalSetings.connectionTimeout());
|
||||
dataSource.setValidationTimeout(signalSetings.validationTimeout());
|
||||
dataSource.setIdleTimeout(signalSetings.idleTimeout());
|
||||
dataSource.setMaxLifetime(signalSetings.maxLifetime());
|
||||
dataSource.setKeepaliveTime(signalSetings.keepaliveTime());
|
||||
dataSource.setLeakDetectionThreshold(signalSetings.leakDetectionThreshold());
|
||||
|
||||
try (Connection connection = dataSource.getConnection()) {
|
||||
connection.isValid(3);
|
||||
} catch (SQLException e) {
|
||||
log.error("Unable to connect to NBCH url={}", signalSetings.url(), e);
|
||||
throw e;
|
||||
}
|
||||
log.info("Connected to NBCH: url={}", signalSetings.url());
|
||||
return dataSource;
|
||||
}
|
||||
|
||||
@Bean(name = "sqlSessionNbch")
|
||||
public SqlSessionFactory sqlSessionFactory(@Qualifier("nbchDataSource") DataSource dataSource) throws Exception {
|
||||
SqlSessionFactoryBean sqlSessionFactoryBean = new SqlSessionFactoryBean();
|
||||
sqlSessionFactoryBean.setDataSource(dataSource);
|
||||
sqlSessionFactoryBean.setMapperLocations(resources);
|
||||
return sqlSessionFactoryBean.getObject();
|
||||
}
|
||||
}
|
||||
|
|
@ -20,6 +20,8 @@ public class CreditTrackerSettings {
|
|||
@NestedConfigurationProperty
|
||||
private DataSourceSettings scoringDataSourceSettings;
|
||||
@NestedConfigurationProperty
|
||||
private DataSourceSettings nbchDataSourceSettings;
|
||||
@NestedConfigurationProperty
|
||||
private XsdValidation xsdValidation;
|
||||
@NestedConfigurationProperty
|
||||
private PipelineSettings pipeline;
|
||||
|
|
|
|||
|
|
@ -0,0 +1,12 @@
|
|||
package ru.nbch.credit_tracker.mapper.nbch;
|
||||
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Mapper
|
||||
public interface SourceMapper {
|
||||
|
||||
List<String> findBusCategories(@Param("memberCodes") List<String> memberCodes);
|
||||
}
|
||||
16
src/main/resources/mybatis/mapper/nbch/SourceMapper.xml
Normal file
16
src/main/resources/mybatis/mapper/nbch/SourceMapper.xml
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<!DOCTYPE mapper
|
||||
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
|
||||
<mapper namespace="ru.nbch.credit_tracker.mapper.nbch.SourceMapper">
|
||||
|
||||
<select id="findBusCategories" resultType="java.lang.String">
|
||||
SELECT CATEGORY
|
||||
FROM SOURCE
|
||||
WHERE MEMBER_CODE IN
|
||||
<foreach item='memberCode' collection='memberCodes' open='(' separator=',' close=')'>
|
||||
#{memberCode}
|
||||
</foreach>
|
||||
</select>
|
||||
</mapper>
|
||||
Loading…
Add table
Reference in a new issue