记录判断springboot druid配置生效(代码方式)

文章展示了如何在SpringBoot应用中配置Druid数据源,包括数据库URL、用户名、密码以及各种连接池参数。之后,通过@Autowired注解获取数据源并检查配置信息,如最大连接数、初始化连接数和Eviction运行间隔时间。
摘要由CSDN通过智能技术生成
spring.datasource.druid.primary.url=jdbc:mysql://127.0.0.1:3306/test?useUnicode=yes&characterEncoding=UTF-8&useSSL=false
spring.datasource.druid.primary.username=root
spring.datasource.druid.primary.password=root123

spring.datasource.druid.primary.driver-class-name=com.mysql.jdbc.Driver
spring.datasource.druid.primary.data-source-class-name=com.mysql.jdbc.Driver
spring.datasource.druid.primary.initial-size=5
spring.datasource.druid.primary.min-idle=5
spring.datasource.druid.primary.max-active=100
#spring.datasource.druid.primary.max-idle=100
spring.datasource.druid.primary.max-wait=10000
spring.datasource.druid.primary.numTestsPerEvictionRun=3
spring.datasource.druid.primary.pool-prepared-statements=false
spring.datasource.druid.primary.validation-query=SELECT 1
spring.datasource.druid.primary.validation-query-timeout=3
spring.datasource.druid.primary.test-on-borrow=true
spring.datasource.druid.primary.test-on-return=false
spring.datasource.druid.primary.test-while-idle=true
spring.datasource.druid.primary.time-between-eviction-runs-millis=5000
spring.datasource.druid.primary.min-evictable-idle-time-millis=540000
spring.datasource.druid.primary.filters=stat,wall,slf4j

在配置文件配置好后,创建DruidDataSource对象,交给Bean管理

import com.alibaba.druid.pool.DruidDataSource;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

import javax.sql.DataSource;

@Configuration
public class DruidConfig {
    @Bean
    @ConfigurationProperties("spring.datasource.druid")
    public DataSource druidDataSource(){
        return new DruidDataSource();
    }
}

创建连接,查看相关的配置信息

    @Autowired
    private DataSource dataSource;
    @SneakyThrows
    public String testDemo() {
        //String jSonString = JsonUtil.toJSonString(req);
        //获得连接
        Connection connection =   dataSource.getConnection();
        System.out.println(connection);
        DruidDataSource druidDataSource = (DruidDataSource) dataSource;
        System.out.println("druidDataSource 数据源最大连接数:" + druidDataSource.getMaxActive());
        System.out.println("druidDataSource 数据源初始化连接数:" + druidDataSource.getInitialSize());
        long timeBetweenEvictionRunsMillis = druidDataSource.getTimeBetweenEvictionRunsMillis();
        //关闭连接
        connection.close();

        return null;

    }

可以查看参数有值。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
Spring Boot Druid配置步骤: 1. 在pom.xml中添加Druid的依赖 2. 配置Druid数据源 3. 在application.properties中配置Druid连接池的参数 4. 在启动类中添加@Servlet注解 5. 可选:配置Druid监控统计功能 以下是Druid数据源配置示例: ``` @Configuration public class DruidConfig { @Value("${spring.datasource.url}") private String dbUrl; @Value("${spring.datasource.username}") private String username; @Value("${spring.datasource.password}") private String password; @Value("${spring.datasource.driver-class-name}") private String driverClassName; @Value("${spring.datasource.initialSize}") private int initialSize; @Value("${spring.datasource.minIdle}") private int minIdle; @Value("${spring.datasource.maxActive}") private int maxActive; @Value("${spring.datasource.maxWait}") private int maxWait; @Value("${spring.datasource.timeBetweenEvictionRunsMillis}") private int timeBetweenEvictionRunsMillis; @Value("${spring.datasource.minEvictableIdleTimeMillis}") private int minEvictableIdleTimeMillis; @Value("${spring.datasource.validationQuery}") private String validationQuery; @Value("${spring.datasource.testWhileIdle}") private boolean testWhileIdle; @Value("${spring.datasource.testOnBorrow}") private boolean testOnBorrow; @Value("${spring.datasource.testOnReturn}") private boolean testOnReturn; @Value("${spring.datasource.poolPreparedStatements}") private boolean poolPreparedStatements; @Value("${spring.datasource.maxPoolPreparedStatementPerConnectionSize}") private int maxPoolPreparedStatementPerConnectionSize; @Value("${spring.datasource.filters}") private String filters; @Value("{spring.datasource.connectionProperties}") private String connectionProperties; @Bean @Primary public DataSource dataSource(){ DruidDataSource datasource = new DruidDataSource(); datasource.setUrl(dbUrl); datasource.setUsername(username); datasource.setPassword(password); datasource.setDriverClassName(driverClassName); datasource.setInitialSize(initialSize); datasource.setMinIdle(minIdle); datasource.setMaxActive(maxActive); datasource.setMaxWait(maxWait); datasource.setTimeBetweenEvictionRunsMillis(timeBetweenEvictionRunsMillis); datasource.setMinEvictableIdleTimeMillis(minEvictableIdleTimeMillis); datasource.setValidationQuery(validationQuery); datasource.setTestWhileIdle(testWhileIdle); datasource.setTestOnBorrow(testOnBorrow); datasource.setTestOnReturn(testOnReturn); datasource.setPoolPreparedStatements(poolPreparedStatements); datasource.setMaxPoolPreparedStatementPerConnectionSize(maxPoolPreparedStatementPerConnectionSize); try { datasource.setFilters(filters); } catch (SQLException e) { System.err.println("druid configuration initialization filter: "+ e); } datasource.setConnectionProperties(connectionProperties); return datasource; } } ```
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值