Spring boot 配置Druid DataSource

来源:互联网 发布:gp88s写频软件 编辑:程序博客网 时间:2024/04/28 12:29
/** * Druid数据源配置 */@Configurationpublic class DataSourceConfig {    private static String dbUrl;    private static String username;    private static String password;    private static String driverClassName;    private static int initialSize;    private static int minIdle;    private static int maxActive;    private static int maxWait;    /**     * 注册DruidServlet     *     * @return     */    @Bean    public ServletRegistrationBean druidServletRegistrationBean() {        ServletRegistrationBean servletRegistrationBean = new ServletRegistrationBean();        servletRegistrationBean.setServlet(new StatViewServlet());        servletRegistrationBean.addUrlMappings("/druid/*");        return servletRegistrationBean;    }    /**     * 注册DruidFilter拦截     *     * @return     */    @Bean    public FilterRegistrationBean druidFilterRegistrationBean() {        FilterRegistrationBean filterRegistrationBean = new FilterRegistrationBean();        filterRegistrationBean.setFilter(new WebStatFilter());        Map<String, String> initParams = new HashMap<String, String>();        //设置忽略请求        initParams.put("exclusions", "*.js,*.gif,*.jpg,*.bmp,*.png,*.css,*.ico,/druid/*");        filterRegistrationBean.setInitParameters(initParams);        filterRegistrationBean.addUrlPatterns("/*");        return filterRegistrationBean;    }    /**     * 配置DataSource     * @return     * @throws SQLException     */    @Bean(initMethod = "init",destroyMethod = "close")    @Primary    public DataSource dataSource() throws SQLException {        DruidDataSource druidDataSource = new DruidDataSource();        druidDataSource.setUsername(username);        druidDataSource.setPassword(password);        druidDataSource.setUrl(dbUrl);        druidDataSource.setFilters("stat,wall");        druidDataSource.setInitialSize(initialSize);        druidDataSource.setMinIdle(minIdle);        druidDataSource.setMaxActive(maxActive);        druidDataSource.setMaxWait(maxWait);        druidDataSource.setUseGlobalDataSourceStat(true);        druidDataSource.setDriverClassName(driverClassName);        return druidDataSource;    }    @Value("${spring.datasource.url}")    public void setDbUrl(String dbUrl) {        DataSourceConfig.dbUrl = dbUrl;    }    @Value("${spring.datasource.username}")    public void setUsername(String username) {        DataSourceConfig.username = username;    }    @Value("${spring.datasource.password}")    public void setPassword(String password) {        DataSourceConfig.password = password;    }    @Value("${spring.datasource.driver-class-name}")    public void setDriverClassName(String driverClassName) {        DataSourceConfig.driverClassName = driverClassName;    }    @Value(value = "${spring.datasource.initialSize}")    public void setInitialSize(int initialSize) {        DataSourceConfig.initialSize = initialSize;    }    @Value(value = "${spring.datasource.minIdle}")    public void setMinIdle(int minIdle) {        DataSourceConfig.minIdle = minIdle;    }    @Value(value = "${spring.datasource.maxActive}")    public void setMaxActive(int maxActive) {        DataSourceConfig.maxActive = maxActive;    }    @Value(value = "${spring.datasource.maxWait}")    public void setMaxWait(int maxWait) {        DataSourceConfig.maxWait = maxWait;    }}

 spring boot datasource配置

spring:  profiles: uat  datasource:    name: AAA    username: sa    password: BBB    url: jdbc:jtds:sqlserver://10.0.0.31:1433/CCC    driver-class-name: net.sourceforge.jtds.jdbc.Driver    type: com.alibaba.druid.pool.DruidDataSource

 

# 初始化大小,最小,最大spring.datasource.initialSize=5spring.datasource.minIdle=5spring.datasource.maxActive=50# 配置获取连接等待超时的时间spring.datasource.maxWait=60000

 最后使用这个URL就可以看到监控信息了:

http://localhost:8080/druid/datasource.html

原创粉丝点击