赞
踩
【前言】
数据源:Hikari最快,Druid数据源更全面
在springboot2.x版本以后,Druid数据源的配置不需要通过编写配置类的方式。本文通过配置文件来配置。
处理druid的依赖druid-spring-boot-starter之外,还需要引入连接数据库的驱动器mysql-connector-java、spring-boot-starter-jdbc。
完整的依赖为:
<dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> <exclusions> <exclusion> <groupId>org.junit.vintage</groupId> <artifactId>junit-vintage-engine</artifactId> </exclusion> </exclusions> </dependency> <!--数据库--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-jdbc</artifactId> </dependency> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <scope>runtime</scope> </dependency> <!-- 配置数据源 --> <dependency> <groupId>com.alibaba</groupId> <artifactId>druid-spring-boot-starter</artifactId> <version>1.1.10</version> </dependency> </dependencies>
#配置数据源 spring.datasource.username=root spring.datasource.password=123456 spring.datasource.url=jdbc:mysql://localhost:3306/ems?serverTimezone=UTC spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver spring.datasource.type=com.alibaba.druid.pool.DruidDataSource #初始化时建立物理连接的个数 spring.datasource.druid.initial-size=3 #最小连接池数量 spring.datasource.druid.min-idle=3 #最大连接池数量 spring.datasource.druid.max-active=10 #获取连接时最大等待时间 spring.datasource.druid.max-wait=60000 #配置监控页面访问登录名称 spring.datasource.druid.stat-view-servlet.login-username=shane #配置监控页面访问密码 spring.datasource.druid.stat-view-servlet.login-password=123456 # 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒 spring.datasource.druid.timeBetweenEvictionRunsMillis=60000 # 配置一个连接在池中最小生存的时间,单位是毫秒 spring.datasource.druid.minEvictableIdleTimeMillis=300000 spring.datasource.druid.validationQuery=SELECT 1 FROM DUAL spring.datasource.druid.testWhileIdle=true spring.datasource.druid.testOnBorrow=false spring.datasource.druid.testOnReturn=false # 打开PSCache,并且指定每个连接上PSCache的大小 spring.datasource.druid.poolPreparedStatements=true spring.datasource.druid.maxPoolPreparedStatementPerConnectionSize=20 #是否开启慢sql查询监控 spring.datasource.druid.filter.stat.log-slow-sql=true #慢SQL执行时间 spring.datasource.druid.filter.stat.slow-sql-millis=1 # 配置监控统计拦截的filters,去掉后监控界面sql无法统计,'wall'用于防火墙 spring.datasource.druid.filters=stat,wall,slf4j
slf4j,使用log4j会报错测试类中代码:
@SpringBootTest
class EmsApplicationTests {
@Autowired
DataSource dataSource;
@Test
public void testDataSource() throws SQLException {
System.out.println(dataSource.getClass());
Connection connection = dataSource.getConnection();
System.out.println(connection);
connection.close();
}
}
打断点,debug


启动主类:

浏览器输入:
http://localhost:8080/druid


至此,配置源druid已经生效,不用再写配置类!!!
赞
踩
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。