|
@ -1,15 +1,22 @@
|
|
|
package com.yihu.wlyy.statistics.config;
|
|
|
|
|
|
import com.alibaba.druid.pool.DruidDataSource;
|
|
|
import com.alibaba.druid.support.http.StatViewServlet;
|
|
|
import com.alibaba.druid.support.http.WebStatFilter;
|
|
|
import org.springframework.beans.factory.annotation.Qualifier;
|
|
|
import org.springframework.beans.factory.annotation.Value;
|
|
|
import org.springframework.boot.autoconfigure.jdbc.DataSourceBuilder;
|
|
|
import org.springframework.boot.context.embedded.FilterRegistrationBean;
|
|
|
import org.springframework.boot.context.embedded.ServletRegistrationBean;
|
|
|
import org.springframework.boot.context.properties.ConfigurationProperties;
|
|
|
import org.springframework.context.annotation.Bean;
|
|
|
import org.springframework.context.annotation.Configuration;
|
|
|
import org.springframework.context.annotation.Primary;
|
|
|
import com.alibaba.druid.support.http.StatViewServlet;
|
|
|
import com.alibaba.druid.support.http.WebStatFilter;
|
|
|
|
|
|
import javax.sql.DataSource;
|
|
|
import java.sql.SQLException;
|
|
|
|
|
|
/**
|
|
|
* Created by Administrator on 2016.10.20.
|
|
@ -50,6 +57,8 @@ public class DataSourceConfig {
|
|
|
private Integer removeAbandonedTimeout;
|
|
|
@Value("${spring.datasource.logAbandoned}")
|
|
|
private Boolean logAbandoned;
|
|
|
@Value("${spring.datasource.filters")
|
|
|
private String filters;
|
|
|
|
|
|
|
|
|
|
|
@ -67,7 +76,7 @@ public class DataSourceConfig {
|
|
|
*/
|
|
|
@Bean(name = "primaryReadWrite")
|
|
|
@Primary//主库 默认不写名字用这个
|
|
|
public DataSource primaryReadWriteDataSource() {
|
|
|
public DataSource primaryReadWriteDataSource() throws SQLException {
|
|
|
DruidDataSource datasource = new DruidDataSource();
|
|
|
datasource.setUrl(primaryReadWriteUrl);
|
|
|
datasource.setUsername(primaryReadWriteUsername);
|
|
@ -90,6 +99,7 @@ public class DataSourceConfig {
|
|
|
datasource.setRemoveAbandoned(removeAbandoned);
|
|
|
datasource.setRemoveAbandonedTimeout(removeAbandonedTimeout);
|
|
|
datasource.setLogAbandoned(logAbandoned);
|
|
|
datasource.setFilters(filters);
|
|
|
return datasource;
|
|
|
}
|
|
|
|
|
@ -103,7 +113,7 @@ public class DataSourceConfig {
|
|
|
private String primaryReadPassword;
|
|
|
|
|
|
@Bean(name = "primaryRead")
|
|
|
public DataSource primaryReadDataSource() {
|
|
|
public DataSource primaryReadDataSource() throws SQLException {
|
|
|
DruidDataSource datasource = new DruidDataSource();
|
|
|
datasource.setUrl(primaryReadUrl);
|
|
|
datasource.setUsername(pprimaryReadUsername);
|
|
@ -126,6 +136,7 @@ public class DataSourceConfig {
|
|
|
datasource.setRemoveAbandoned(removeAbandoned);
|
|
|
datasource.setRemoveAbandonedTimeout(removeAbandonedTimeout);
|
|
|
datasource.setLogAbandoned(logAbandoned);
|
|
|
datasource.setFilters(filters);
|
|
|
|
|
|
return datasource;
|
|
|
}
|
|
@ -138,7 +149,7 @@ public class DataSourceConfig {
|
|
|
@Value("${spring.datasource.im.password}")
|
|
|
private String imPassword;
|
|
|
@Bean(name = "imData")
|
|
|
public DataSource imDataSource() {DruidDataSource datasource = new DruidDataSource();
|
|
|
public DataSource imDataSource()throws SQLException {DruidDataSource datasource = new DruidDataSource();
|
|
|
datasource.setUrl(imUrl);
|
|
|
datasource.setUsername(imUsername);
|
|
|
datasource.setPassword(imPassword);
|
|
@ -160,9 +171,36 @@ public class DataSourceConfig {
|
|
|
datasource.setRemoveAbandoned(removeAbandoned);
|
|
|
datasource.setRemoveAbandonedTimeout(removeAbandonedTimeout);
|
|
|
datasource.setLogAbandoned(logAbandoned);
|
|
|
datasource.setFilters(filters);
|
|
|
|
|
|
return datasource;
|
|
|
}
|
|
|
//------------------------------------druid 监控----------------------------------------------
|
|
|
@Bean
|
|
|
public ServletRegistrationBean statViewServlet(){
|
|
|
//创建servlet注册实体
|
|
|
ServletRegistrationBean servletRegistrationBean = new ServletRegistrationBean(new StatViewServlet(),"/druid/*");
|
|
|
//设置ip白名单
|
|
|
//servletRegistrationBean.addInitParameter("allow","127.0.0.1");
|
|
|
//设置ip黑名单,如果allow与deny共同存在时,deny优先于allow
|
|
|
// servletRegistrationBean.addInitParameter("deny","192.168.0.19");
|
|
|
//设置控制台管理用户
|
|
|
servletRegistrationBean.addInitParameter("loginUsername","jkzl");
|
|
|
servletRegistrationBean.addInitParameter("loginPassword","jkzlehr");
|
|
|
//是否可以重置数据
|
|
|
servletRegistrationBean.addInitParameter("resetEnable","false");
|
|
|
return servletRegistrationBean;
|
|
|
}
|
|
|
|
|
|
|
|
|
@Bean
|
|
|
public FilterRegistrationBean statFilter(){
|
|
|
//创建过滤器
|
|
|
FilterRegistrationBean filterRegistrationBean = new FilterRegistrationBean(new WebStatFilter());
|
|
|
//设置过滤器过滤路径
|
|
|
filterRegistrationBean.addUrlPatterns("/*");
|
|
|
//忽略过滤的形式
|
|
|
filterRegistrationBean.addInitParameter("exclusions","*.js,*.gif,*.jpg,*.png,*.css,*.ico,/druid/*");
|
|
|
return filterRegistrationBean;
|
|
|
}
|
|
|
//------------------------------------druid 监控----------------------------------------------
|
|
|
}
|