注:此内容为备忘笔记,仅限参考
1,
#数据库配置
=
=jdbc:mysql://localhost:3306/classweb?serverTimezone=UTC
=root
=hao.521
-class-name=
#配置Mybatis实体类包
-aliases-package=
#连接池的配置信息
# 初始化大小,最小,最大
=4
=4
=20
# 配置获取连接等待超时的时间
=60000
# 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒
=60000
# 配置一个连接在池中最小生存的时间,单位是毫秒
=300000
=SELECT 1 FROM DUAL
=true
=false
=false
=true
=20
# 配置监控统计拦截的filters,去掉后监控界面sql无法统计,'wall'用于防火墙
=stat,wall,log4j
# 通过connectProperties属性来打开mergeSql功能;慢SQL记录
==true;=5000
2,DruidSource
@ConfigurationProperties(prefix = "")
public class DruidSource {
private String dbUrl;
private String username;
private String password;
private String driverClassName;
private int initialSize;
private int minIdle;
private int maxActive;
private int maxWait;
private int timeBetweenEvictionRunsMillis;
private int minEvictableIdleTimeMillis;
private String validationQuery;
private boolean testWhileIdle;
private boolean testOnBorrow;
private boolean testOnReturn;
private boolean poolPreparedStatements;
private int maxPoolPreparedStatementPerConnectionSize;
private String filters;
private String connectionProperties;
public String getDbUrl() {
return dbUrl;
}
public void setDbUrl(String dbUrl) {
= dbUrl;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
= username;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
= password;
}
public String getDriverClassName() {
return driverClassName;
}
public void setDriverClassName(String driverClassName) {
= driverClassName;
}
public int getInitialSize() {
return initialSize;
}
public void setInitialSize(int initialSize) {
= initialSize;
}
public int getMinIdle() {
return minIdle;
}
public void setMinIdle(int minIdle) {
= minIdle;
}
public int getMaxActive() {
return maxActive;
}
public void setMaxActive(int maxActive) {
= maxActive;
}
public int getMaxWait() {
return maxWait;
}
public void setMaxWait(int maxWait) {
= maxWait;
}
public int getTimeBetweenEvictionRunsMillis() {
return timeBetweenEvictionRunsMillis;
}
public void setTimeBetweenEvictionRunsMillis(int timeBetweenEvictionRunsMillis) {
= timeBetweenEvictionRunsMillis;
}
public int getMinEvictableIdleTimeMillis() {
return minEvictableIdleTimeMillis;
}
public void setMinEvictableIdleTimeMillis(int minEvictableIdleTimeMillis) {
= minEvictableIdleTimeMillis;
}
public String getValidationQuery() {
return validationQuery;
}
public void setValidationQuery(String validationQuery) {
= validationQuery;
}
public boolean isTestWhileIdle() {
return testWhileIdle;
}
public void setTestWhileIdle(boolean testWhileIdle) {
= testWhileIdle;
}
public boolean isTestOnBorrow() {
return testOnBorrow;
}
public void setTestOnBorrow(boolean testOnBorrow) {
= testOnBorrow;
}
public boolean isTestOnReturn() {
return testOnReturn;
}
public void setTestOnReturn(boolean testOnReturn) {
= testOnReturn;
}
public boolean isPoolPreparedStatements() {
return poolPreparedStatements;
}
public void setPoolPreparedStatements(boolean poolPreparedStatements) {
= poolPreparedStatements;
}
public int getMaxPoolPreparedStatementPerConnectionSize() {
return maxPoolPreparedStatementPerConnectionSize;
}
public void setMaxPoolPreparedStatementPerConnectionSize(int maxPoolPreparedStatementPerConnectionSize) {
= maxPoolPreparedStatementPerConnectionSize;
}
public String getFilters() {
return filters;
}
public void setFilters(String filters) {
= filters;
}
public String getConnectionProperties() {
return connectionProperties;
}
public void setConnectionProperties(String connectionProperties) {
= connectionProperties;
}
@Bean //声明其为Bean实例
@Primary //在同样的DataSource中,首先使用被标注的DataSource
public DataSource dataSource() throws SQLException {
DruidDataSource datasource = new DruidDataSource();
();
(username);
(password);
(driverClassName);
//configuration
(initialSize);
(minIdle);
(maxActive);
(maxWait);
(timeBetweenEvictionRunsMillis);
(minEvictableIdleTimeMillis);
(validationQuery);
(testWhileIdle);
(testOnBorrow);
(testOnReturn);
(poolPreparedStatements);
(maxPoolPreparedStatementPerConnectionSize);
(filters);
return datasource;
}
}