1、druid官方github地址
https://github.com/alibaba/druid
整合第三方技术的两种方式
- 自定义
- 找starter
2、自定义方式
1)、创建数据源
pom.xml
<!--druid数据库连接池-->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid</artifactId>
<version>1.1.17</version>
</dependency>
2)、创建 application.yaml 配置数据库连接参数。
spring:
datasource:
url: jdbc:mysql://localhost:3306/user?useUnicode=true&characterEncoding=utf-8
username: root
password: 941941
driver-class-name: com.mysql.cj.jdbc.Driver
3)、创建配置文件类 MyDataSourceConfig
,绑定 application.yaml
中的 datasource:
下的数据。
package com.wzy.springbootweb02.config;
@Configuration
public class MyDataSourceConfig {
@ConfigurationProperties("spring.datasource")//把DataSource与application.yaml配置文件中spring下的datasource下的数据绑定。
@Bean
public DataSource dataSource(){
DruidDataSource druidDataSource = new DruidDataSource();
return druidDataSource;
}
}
4)、在测试类中测试。
package com.wzy.springbootweb02;
@Slf4j
@SpringBootTest
class SpringbootWeb02ApplicationTests {
@Autowired
DataSource dataSource;
@Test
void contextLoads() throws SQLException {
//dataSource获取数据库连接
Connection connection = dataSource.getConnection();
//预编译sql语句
PreparedStatement preparedStatement = connection.prepareStatement("select * from student");
//执行sql查询语句
ResultSet resultSet = preparedStatement.executeQuery();
//遍历,获取结果和,
int count = 0;
while (resultSet.next()){
resultSet.getInt("id");
count++;
}
log.info("记录总数{}",count);
}
结果:
第二种方式:在文件配置类中。
package com.wzy.springbootweb02.config;
@Configuration
public class MyDataSourceConfig {
@Bean
public DataSource dataSource() throws SQLException {
DruidDataSource druidDataSource = new DruidDataSource();
druidDataSource.setUrl("jdbc:mysql://localhost:3306/user");
druidDataSource.setUsername("root");
druidDataSource.setPassword("941941");
druidDataSource.setDriverClassName("com.mysql.cj.jdbc.Driver");
return druidDataSource;
}
}
创建 application.yaml 配置数据库连接参数。
spring:
datasource:
url: jdbc:mysql://localhost:3306/user?useUnicode=true&characterEncoding=utf-8
username: root
password: 941941
driver-class-name: com.mysql.cj.jdbc.Driver