前言
最近实习在接触SSH框架,跟数据库打交道当然少不了JDBC啦。我在看我们工程文件的时候发现一直在使用JDBCTemplate,百度之后发现是Spring提供的各种模板和回调,有点像DBUtils~然后引用链我觉得下面这个表示很形象:DataSource --> JdbcTemplate --> Dao --> Service --> Action/Servlet("–>"表示将左边的对象注入到右边的对象当中)
总之,我在这里把学习到的东西总结一下。
##JDBCTemplate需要的Jar包 ##
spring-jdbc-4.2.4.RELEASE.jar
spring-tx-4.2.4.RELEASE.jar
数据库驱动包:mysql-connector-java-5.1.7-bin.jar
JDBCTemplate主要方法
- execute:用于执行任何SQL语句,一般用于执行DDL语句;
- update:用于执行增删改等语句;
- batch(batchupdate):批量的update(我个人的理解)
- query:用于执行查询相关语句;
- call:用于执行存储过程、函数相关语句
关于query方法
与修改与删除方法相比,查询相对有些复杂。在使用比较基础的持久化工具的时候,比如DBUtils都会针对查询结果给我们提供一些封装的接口和类,但是JDBCTemplate只给我们提供了接口,并没有可用的类,所以我们需要自己写实现类来进行封装。
关于Rowmapper
SingleRowmapper:拿一行
ListRowmapper:拿多行
都是自己实现的Rowmapper的映射类