一、闲话
国庆回来搬家去了,还联系上了七天班,所以偷懒了,今天继续学习Spring Boot
二、自定义整合方式
Spring Boot整合第三方技术有2种方式:自定义方式和利用starter
我们先了解一下自定义方式,首先引入相关依赖
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid</artifactId>
<version>1.1.17</version>
</dependency>
然后声明一个配置类,使用@Bean注入一个DataSource
类型的组件
在上一篇博客【Spring Boot】DataSource数据源的自动配置解析中,我们通过分析DataSourceAutoConfiguration
可以得知,系统的默认数据源HikariDataSource
生效要求系统中没有DataSource.class类型的bean
package com.decade.config;
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 MyDataSourceConfig {
@Bean
// 也可以使用@ConfigurationProperties注解直接获取配置文件中的属性
@ConfigurationProperties(prefix = "spring.datasource")
public DataSource dataSource() {
final DruidDataSource druidDataSource = new DruidDataSource();
// 可以自己设置数据源相关属性
// druidDataSource.setUrl("");
// druidDataSource.setUsername("");
// druidDataSource.setPassword("");
return druidDataSource;
}
}
然后我们使用之前的测试类进行测试
package com.decade;
import lombok.extern.slf4j.Slf4j;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.jdbc.core.JdbcTemplate;
import javax.sql.DataSource