java吧 关注:1,263,028贴子:12,765,258
  • 0回复贴,共1

Spring JDBC技术

只看楼主收藏回复

1、什么是Spring JDBC
因为JDBC的操作过程比较烦索,并且操作步骤大多相对固定,所以很多框架都对其进行了封装与优化。其中著名的Spring框架也对JDBC做了简单封装。
Spring框架提供了一个JdbcTemplate类简化JDBC的开发,它的特点是:简单、方便,这个技术俗称Spring JDBC技术。
Spring JDBC理解为Spring框架对持久层JDBC操作进行了封装与优化,化繁琐为简单实用,即解决持久层的技术问题。
2、Spring JDBC的作用
Spring JDBC技术中最为核心的类是JdbcTemplate类。
JdbcTemplate类负责数据库资源管理和错误处理,大大简化了开发人员对数据库的操作,使得开发人员可以从繁琐的数据库操作中解脱出来,从而将更多精力投入到编写业务逻辑当中。
3、使用Spring JDBC
Spring JDBC常用API:
org.springframework.jdbc.core.JdbcTemplate类:

需求:
将user表中id=1的密码修改为333333
结果:

步骤:
01导入jar包和配置文件
Spring JDBC的jar包:
commons-logging-1.2.jar
spring-beans-5.0.0.RELEASE.jar
spring-core-5.0.0.RELEASE.jar
spring-jdbc-5.0.0.RELEASE.jar
spring-tx-5.0.0.RELEASE.jar
Mysql数据库的jar包:
mysql-connector-java-5.1.38-bin.jar
Druid连接池的jar包和配置文件:
druid-1.0.9.jar
src/druid.properties
02导入DruidUtil工具类
03创建JdbcTemplate对象,依赖于连接池
04创建sql语句,如果有值,可以用占位符?号替代
05如果sql语句中有占位符?号,必须用一维Object[]为每个占位符?号依次赋值
06执行sql语句,并接收结果
07处理结果
代码:
package com.it.jdbctemplate;
import com.util.JdbcUtil;
import org.springframework.jdbc.core.JdbcTemplate;
public class JdbcTemplateDemo01 {
public static void main(String[] args) {
//01导入jar包和配置文件
//02导入DruidUtil工具类
//03创建JdbcTemplate对象,依赖于连接池
JdbcTemplate jdbcTemplate = new JdbcTemplate(DruidUtil.getDataSource());
//04创建sql语句,如果有值,可以用占位符?号替代
String sql = "UPDATE USER SET PASSWORD=? WHERE id=?";
//05如果sql语句中有占位符?号,必须用一维Object[]为每个占位符?号依次赋值
Object[] params = {"333333",1};
//06执行sql语句,并接收结果
int count = jdbcTemplate.update(sql, params);
//07处理结果
if (count > 0) {
System.out.println("操作成功");
} else {
System.out.println("操作失败");
}
}
}
源码如下:
1 @NonNull可以标注在方法、字段、参数之上,表示对应的值不可以为空
2 @Nullable注解可以标注在方法、字段、参数之上,表示对应的值可以为空

4、JdbcTemplate类方法总结


1楼2020-06-11 09:20回复