SpringBoot配置Druid数据源的方法实例分析
在SpringBoot中,我们可以使用Druid数据源连接数据库,本文将详细讲解如何在SpringBoot中配置Druid数据源的方法。
引入Druid依赖
在pom.xml文件中,添加Druid依赖:
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid-spring-boot-starter</artifactId>
<version>1.2.1</version>
</dependency>
application.properties配置
在application.properties中添加如下配置项:
# 数据源配置
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.datasource.url=jdbc:mysql://localhost:3306/test
spring.datasource.username=root
spring.datasource.password=root
# Druid数据源配置
spring.datasource.type=com.alibaba.druid.pool.DruidDataSource
spring.datasource.filters=stat,wall,logback
spring.datasource.validation-query=SELECT 'x'
spring.datasource.maxActive=20
spring.datasource.initialSize=5
spring.datasource.minIdle=5
spring.datasource.maxWait=60000
spring.datasource.timeBetweenEvictionRunsMillis=60000
spring.datasource.minEvictableIdleTimeMillis=300000
spring.datasource.poolPreparedStatements=true
spring.datasource.maxPoolPreparedStatementPerConnectionSize=20
spring.datasource.connectionProperties=druid.stat.mergeSql=true;druid.stat.slowSqlMillis=5000
示例1:使用JdbcTemplate连接数据库
在代码中,我们可以通过JdbcTemplate来连接Druid数据源。
@Configuration
public class DataSourceConfig {
@Bean(name = "dataSource")
@ConfigurationProperties(prefix = "spring.datasource")
public DataSource dataSource() {
return DruidDataSourceBuilder.create().build();
}
@Bean(name = "jdbcTemplate")
public JdbcTemplate jdbcTemplate(@Qualifier("dataSource") DataSource dataSource) {
return new JdbcTemplate(dataSource);
}
}
注:需要使用@Configuration和@Bean注解将DruidDataSource加入到Spring中。
示例2:在MyBatis中使用Druid数据源
在MyBatis中使用Druid数据源,需要配置SqlSessionFactory和TransactionManager。
@Configuration
@MapperScan("com.example.demo.mapper")
public class DataSourceConfig {
@Bean(name = "dataSource")
@ConfigurationProperties(prefix = "spring.datasource")
public DataSource dataSource() {
return DruidDataSourceBuilder.create().build();
}
@Bean(name = "sqlSessionFactory")
public SqlSessionFactory sqlSessionFactory(@Qualifier("dataSource") DataSource dataSource)
throws Exception {
SqlSessionFactoryBean sessionFactory = new SqlSessionFactoryBean();
sessionFactory.setDataSource(dataSource);
return sessionFactory.getObject();
}
@Bean(name = "transactionManager")
public DataSourceTransactionManager transactionManager(@Qualifier("dataSource") DataSource dataSource) {
return new DataSourceTransactionManager(dataSource);
}
}
注:需要使用@Configuration和@Bean注解将DruidDataSource相关的实例加入到Spring中,并使用@MapperScan注解指定Mapper接口所在的包。
至此,我们在SpringBoot中成功配置了Druid数据源。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:springboot 配置DRUID数据源的方法实例分析 - Python技术站