SpringBoot操作数据库
1.SpringData简介
对于数据访问层,无论是SQL(关系型数据库)还是NoSQL(非关系型数据库),SpringBoot底层都是采用SpringData的方式进行统一处理的。
SpringBoot底层都是采用SpringData的方式进行统一处理各种数据库,SpringData也是Spring中与SpringBoot、SpringCloud等齐名的知名项目。
SpringData官网:https://spring.io/projects/spring-data
数据库相关启动器:参考官方文档:https://docs.spring.io/spring-boot/docs/2.2.5.RELEASE/reference/htmlsingle/#using-boot-starter
2.集成JDBC
导入测试数据库
待补充...
创建测试项目测试数据源
1.新建项目测试:springboot-data-jdbc,引入响应的模块(基础模块)
引入的模块:Spring Web,JDBC API,MySQL Driver
2.项目建好后,pom中导入了如下启动器
1 <dependency> 2 <groupId>org.springframework.boot</groupId> 3 <artifactId>spring-boot-starter-jdbc</artifactId> 4 </dependency> 5 <dependency> 6 <groupId>mysql</groupId> 7 <artifactId>mysql-connector-java</artifactId> 8 <scope>runtime</scope> 9 </dependency>
3.编写yaml配置文件连接数据库
1 spring: 2 datasource: 3 username: root 4 password: root 5 url: jdbc:mysql://localhost:3306/springboot?serverTimezone=UTC&Unicode=true&characterEncoding=utf-8 6 driver-class-name: com.mysql.cj.jdbc.Driver
4.配置完这些东西之后,我们就可以直接去使用了,springboot已经默认帮我们进行了自动配置,去测试类测试一下:
1 @SpringBootTest 2 class SpringbootDataJdbcApplicationTests { 3 //DI注入 4 @Autowired 5 DataSource dataSource; 6 @Test 7 void contextLoads() throws SQLException { 8 //看一下默认数据源 9 System.out.println(dataSource.getClass()); 10 //获取连接 11 Connection connection = dataSource.getConnection(); 12 System.out.println(connection); 13 //关闭连接 14 connection.close(); 15 } 16 }
结果:我们可以看到他默认给我们配置的数据源:class com.zaxxer.hikari.HikariDataSource,我们并没有手动配置
1212