17-SpringBoot整合JDBC
SpringBoot整合JDBC
对于数据访问层,无论是SQL(关系型数据库)还NOSQL(非关系型数据库),SpringBoot底层采用的事SpringData的方式进行统一处理。
SpringData在spring全家桶中也是和SpringBoot、SpringCloud等齐名的项目。https://spring.io/projects/spring-data

springboot单单使用JDBC的话,需要的启动器jar包如下,都是和data有关的

下面写一个测试案例
1、创建一个模块:f-springboot-jdbc


我们要注意2.4.7这个版本无法从远程仓库下载到本地仓库,所以我们换成我们本地仓库的版本,如2.4.3或者2.2.2

2、我们在idea中添加数据库,更加方便的管理我们的数据库





出现上面的Error原因是我们在springboot中使用的MySQL,需要设置时区,我们在那个国家就设置那个时区。



3、编写配置文件

4、编写测试代码

运行测试,结果如下


测试结果如下

5、查看一些源码
我们可以在配置文件中找到对应的Properties文件,在找到数据源的自动配置文件。


使用 spring.datasource.type 指定自定义的数据源类型,值为要使用的连接池实现的完全限定名。
6、熟悉JDBCTemplate对象
我们有了HikariDataSouce这个数据源,就可以拿到数据库连接对象Connection,有了该对象我们就可以使用原生的JDBC语句来操作数据库了。
我们不使用第三方的数据库操作框架,如mybatis、hibernate等,但是spring也对JDBC进行了轻量级的封装,让我们较方便的直接使用JDBC。这里的封装对象就是JDBCTemplate对象。
JdbcTemplate主要提供以下几类方法:
- execute方法:可以用于执行任何SQL语句,一般用于执行DDL语句;
- update方法及batchUpdate方法:update方法用于执行新增、修改、删除等语句;batchUpdate方法用于执行批处理相关语句;
- query方法及queryForXXX方法:用于执行查询相关语句;
- call方法:用于执行存储过程、函数相关语句。
springboot中有许多的XXXTemplate对象,这些对象是已经配置好的模板,拿来即用。而JDBCTemplate就是把所有的CRUD方法都封装在里面,而且该对象被放到了IOC容器中,使用的时候自动注入即可。

7、创建一个处理器,测试JDBCTemplate对象的使用

启动程序,访问URL:http://localhost:8080/getAll,结果如下


结果如下



结果如下



浙公网安备 33010602011771号