package com.ld.igds.conf; import lombok.Data; import org.springframework.boot.context.properties.ConfigurationProperties; import org.springframework.stereotype.Component; import java.util.Properties; @Data @Component @ConfigurationProperties(prefix = "spring.datasource.db-base") public class BaseDataSourceProperties { // jdbc private String name; private String type; private String url; private String driverClassName; private String username; private String password; private String publicKey; private int initialSize; private int minIdle; private int maxActive = 100; private long maxWait; private long timeBetweenEvictionRunsMillis; private long minEvictableIdleTimeMillis; private String validationQuery; private boolean testWhileIdle; private boolean testOnBorrow; private boolean testOnReturn; private boolean poolPreparedStatements; private int maxPoolPreparedStatementPerConnectionSize; private String filters; private String useGlobalDataSourceStat; private boolean configDecrypt = true;//是否启用加密 private Properties connectionProperties; /** * //是否强制关闭连接时长大于removeAbandonedTimeoutMillis的连接 */ private boolean removeAbandoned; /** * 一个连接从被连接到被关闭之间的最大生命周期 单位:秒 */ private int removeAbandonedTimeout; /** * 强制关闭连接时是否记录日志 */ private boolean logAbandoned; /** * 初始化设置参数 * @param connectionProperties */ public void setConnectionProperties(Properties connectionProperties) { this.connectionProperties = connectionProperties; } public Properties getConnectionProperties() { connectionProperties.setProperty("druid.stat.mergeSql","true"); connectionProperties.setProperty("druid.stat.slowSqlMillis=5000","5000"); return connectionProperties; } }