`
gwj41
  • 浏览: 99708 次
  • 性别: Icon_minigender_1
  • 来自: 苏州
社区版块
存档分类
最新评论

Spring boot 配置Druid DataSource

阅读更多
/**
 * Druid数据源配置
 */
@Configuration
public 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=5
spring.datasource.minIdle=5
spring.datasource.maxActive=50
# 配置获取连接等待超时的时间
spring.datasource.maxWait=60000

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

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

分享到:
评论

相关推荐

    简单Spring boot和druid监控demo

    spring.datasource.type=com.alibaba.druid.pool.DruidDataSource spring.datasource.druid.initial-size=5 spring.datasource.druid.min-idle=5 spring.datasource.druid.max-active=20 spring.datasource.druid....

    15. Spring Boot使用Druid和监控配置【从零开始学Spring Boot】

    在本篇【从零开始学Spring Boot】系列中,我们将探讨如何在Spring Boot项目中集成并配置Druid数据源以及其监控功能。Druid是一个强大的数据库连接池,它提供了丰富的监控、扩展性以及性能优化特性。Spring Boot简化...

    16. Spring Boot使用Druid(编程注入)【从零开始学Spring Boot】

    下面将详细介绍Druid数据源以及在Spring Boot中的配置与使用。 首先,Druid数据源是阿里巴巴开源的一款高性能、基于连接池的数据库连接管理工具,它集成了监控统计、SQL解析、Web监控等功能,旨在提高数据库的连接...

    Spring Boot + Druid + Mybatis + Atomikos 配置多数据源 并支持分布式事务

    本教程将探讨如何利用Spring Boot、Druid、Mybatis以及Atomikos来配置多数据源并实现分布式事务。 首先,Spring Boot是Java生态系统中的一个流行框架,它简化了设置和配置过程,使得开发人员可以快速启动新项目。在...

    spring-boot-druid

    spring.datasource.type=com.alibaba.druid.pool.DruidDataSource spring.datasource.druid.initial-size=5 spring.datasource.druid.min-idle=5 spring.datasource.druid.max-active=20 spring.datasource.druid....

    Spring MVC 配置 druid 数据源实例

    spring.datasource.type=com.alibaba.druid.pool.DruidDataSource spring.datasource.druid.initial-size=5 spring.datasource.druid.min-idle=5 spring.datasource.druid.max-active=20 spring.datasource.druid....

    3-7 Spring Boot 集成 Druid 监控数据源.pdf1

    spring.datasource.type=com.alibaba.druid.pool.DruidDataSource spring.datasource.url=jdbc:mysql://localhost:3306/test?serverTimezone=UTC&useUnicode=true&characterEncoding=utf-8&useSSL=true spring....

    Spring Boot整合Druid Demo项目代码包

    type: com.alibaba.druid.pool.DruidDataSource driver-class-name: com.mysql.jdbc.Driver url: jdbc:mysql://localhost:3306/test?useSSL=false&serverTimezone=UTC username: root password: password ...

    spring-boot+druid整合

    spring.datasource.type=com.alibaba.druid.pool.DruidDataSource spring.datasource.druid.url=jdbc:mysql://localhost:3306/test?useSSL=false&serverTimezone=UTC spring.datasource.druid.username=root spring....

    study-spring-boot-druid.zip

    spring.datasource.type=com.alibaba.druid.pool.DruidDataSource spring.datasource.druid.initial-size=5 spring.datasource.druid.min-idle=5 spring.datasource.druid.max-active=20 ``` 3. **自定义配置类**:...

    Spring Boot+Jpa多数据源配置Demo(支持不同数据库)

    在Spring Boot中,我们可以通过创建不同的`DataSource` bean来配置多个数据源。每个数据源通常会有一个对应的`JdbcTemplate`或`JpaEntityManagerFactory`。首先,我们需要在`application.yml`或`application....

    Spring Boot 自定义数据源DruidDataSource代码

    Spring Boot 自定义数据源 DruidDataSource 代码 Spring Boot 是一个基于 Java 语言的开源框架,能够帮助开发者快速构建独立的、生产级别的基于 Spring 框架的应用程序。而 DruidDataSource 是阿里巴巴开源的数据库...

    从零开始学Spring Boot

    1.18 Spring Boot使用Druid和监控配置 1.19 Spring Boot使用Druid(编程注入) 1.20 Spring Boot普通类调用bean 1.21 使用模板(thymeleaf-freemarker) 1.22 Spring Boot 添加JSP支持 1.23 Spring Boot Servlet ...

    spring boot配置druid连接池的完整步骤

    Spring Boot 配置 Druid 连接池的完整步骤 Spring Boot 是一个基于 Java 的开源框架,用于构建微服务架构的应用程序。 Druid 是一个功能强大且高效的数据库连接池,由阿里巴巴开发,已经在生产环境中广泛应用。 ...

    SpringBoot整合JDBC&Druid;数据源示例

    在Java配置类中,我们可以创建一个`DruidDataSource`实例并注入自定义配置: ```java @Configuration public class DruidConfig { @Value("${spring.datasource.druid.remove-abandoned-timeout}") private int ...

    spring boot+Druid+mybatis搭建多数据源java项目

    在Spring Boot中,通过配置不同的`DataSource` bean,可以实现多数据源的支持。每个数据源需要配置数据库连接信息(如URL、用户名、密码)以及数据源类型(如Druid)。通常还需要一个主数据源,用于处理全局事务。 ...

    Spring Boot整合mybatis 配置Druid数据源开启sql监控

    在Spring Boot应用中整合MyBatis并配置Druid数据源以开启SQL监控,是一个常见的数据库管理与优化操作。下面将详细介绍这一过程。 首先,我们需要理解Spring Boot、MyBatis和Druid这三个组件的作用。Spring Boot简化...

    Spring-Boot-Demo

    spring.datasource.type=com.alibaba.druid.pool.DruidDataSource ``` 3. 可以自定义Druid的配置,例如设置最大连接数、最小连接数等: ``` spring.datasource.druid.max-active=20 spring.datasource.druid.min-...

    spring boot 整合mybtis druid 多数据源 源代码

    Spring Boot可以通过配置多个DataSource bean来实现这一点。每个数据源可以有不同的配置,例如数据库连接信息、最大连接数、最小连接数等。在项目中,我们可以创建一个主数据源和多个从数据源,主数据源用于处理核心...

Global site tag (gtag.js) - Google Analytics