这篇文章介绍如何在springboot的项目中进行数据库的连接,完成数据库操作。
HikariDataSource是springboot的默认数据源,性能十分优秀,我们如果想要进行数据库操作,需要引入相应的starter
<dependency>
<groupId>org.springframework.bootgroupId>
<artifactId>spring-boot-starter-data-jdbcartifactId>
dependency>
在这个starter里面就有关于HikariDataSource的引入

Spring Boot 不知道项目要操作 Mysql 还是 Oracle,或者是其他数据库 ,所以需要在 pom.xml 指定导入数据库驱动
<dependency>
<groupId>mysqlgroupId>
<artifactId>mysql-connector-javaartifactId>
<version>5.1.49version>
dependency>
接下来就是配置数据库的基本信息了,我们在配置文件yaml中进行配置,数据库的配置信息是基于DataSourceProperties这个类的

下面就是该类的一些字段

我们需要配置的就4个,就是用户名,密码,驱动类名和url

把这些配置完成之后我们就可以直接使用了,我们使用JdbcTemplate来测试一下
下面是我创建的一张表,里面有3条信息,现在就是要使用JdbcTemplate完成该表的查询

测试代码如下
@Data
public class People {
private Integer id;
private String name;
private String gender;
private Integer age;
}
@SpringBootTest
public class ApplicationTest {
@Resource
private JdbcTemplate jdbcTemplate;
@Test
public void t1() {
BeanPropertyRowMapper<People> rowMapper = new BeanPropertyRowMapper<>(People.class);
String sql = "select * from people";
List<People> peopleList = jdbcTemplate.query(sql, rowMapper);
System.out.println("\n----------------start----------------");
System.out.println(Objects.requireNonNull(jdbcTemplate.getDataSource()).getClass());
for (People people : peopleList) {
System.out.println(people);
}
System.out.println("-----------------end-----------------\n");
}
}
运行代码,查看控制台输出

可以发现已经完成了查询,也就是说明数据库的连接已经没有问题了。还可以看见我们springboot使用的默认数据源确实是HikariDataSource。
上面我们使用的是默认数据源,这里我就来介绍如何进行切换,以Druid为例子,首先我们现需要引入druid的相关依赖
<dependency>
<groupId>com.alibabagroupId>
<artifactId>druidartifactId>
<version>1.2.15version>
dependency>
然后创建一个配置类,在这个类里面注入一个DruidDataSource
@Configuration
public class DruidConfig {
@ConfigurationProperties("spring.datasource")
@Bean
public DataSource dataSource(){
return new DruidDataSource();
}
}
@ConfigurationProperties(“spring.datasource”)这行代码的意思就是DruidDataSource要去读取配置文件中关于spring.datasource信息,配置文件内容如下

这样配置之后,我们的数据源就已经是Druid了,还是运行上面的测试代码,查看控制台输出

可以发现数据源已经切换为Druid了。