Spring学习笔记_5_Spring JDBC

这里其实相当于是复习,之前在学数据库操作的时候顺便学了这个,也记了笔记,关于为什么要用spring JDBC之类的,可以看JDBC那里的先复习一下。

Spring JDBC

Spring JdbcTemplate类

JdbcTemplate类的继承关系十分简单,他继承了抽象类JdbcAccessor,同时实现了接口JdbcOperations。在抽象类JdbcAccessor的设计中,该类为其子类提供了一些访问数据库时的公共属性,具体如下:

  1. DataSource
  2. SQLExceptionTranslator
    在JdbcOperations接口中,定义了通过Jdbc操作数据库的基本操作方法,而JdbcTemplate类提供这些接口方法的实现,包括添加、修改、查询、删除等操作
Spring JDBC的配置

Spring框架提供JDBC支持主要有四个包组成

  1. core:核心包,包含了JDBC的核心功能
  2. dataSource:数据源包,访问数据源的实用工具类
  3. object:对象包,以面向对象的方式访问数据库
  4. support:支持包,包含了core和object包中的支持类
    要使用Spring JDBC就要对这几个包进行配置
    现在我们在applicationContext.xml中配置
    具体如何使用在后面。
    在这里插入图片描述

JdbcTemplate的常用方法

execute()方法

创建表
在这里插入图片描述
在这里插入图片描述

update()方法

可以完成插入、更新和删除操作。在JdbcTemplate类中,update方法中存在多个重载的方法,其常用方法具体介绍如下:

  • int update(String sql):可以直接传入sql语句并返回受影响的行数。
  • int update(PreparedStatementCreator psc):该方法执行从PreparedStatementCreator返回的语句,然后返回受影响的行数
  • int update(String sql,PrepareStatementSetter pss):该方法通过PrepareStatementSetter设置SQL语句中的参数,并返回受影响的行数。
  • int update(String sql,Object…args):该方法使用Object…设置SQL语句中的参数,要求参数不能为空,并返回受影响的行数。
例子

新建一个user类,并添加setter,getter,toString方法(此处省略)
在这里插入图片描述
创建userDao
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
用户添加成功
在这里插入图片描述
修改
在这里插入图片描述
其实项目中我觉得这里还可以传入其他参数,比如要修改成什么
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
删除
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

query()方法

JdbcTemplate对JDBC的流程做了封装,提供了大量的query()方法来处理各种对数据库表的查询操作,如下:

  • List query(String sql,PrepareStatementSetter pss,RowMapper rowMapper):该方法根据String类型参数提供的SQL语句创建PrepareStatement对象,通过,RowMapper将结果返回到list中。
  • List query(String sql,Object[] args,RowMapper rowMapper):该方法使用Object[]的值来设置SQL中的参数值,采用RowMapper回调方法可以直接返回List类型的数据。
  • queryForObject(String sql,Object[] args,RowMapper rowMapper):该方法将args参数绑定到sql语句中,通过rowMapper返回单行记录,并转化为一个Object类型返回。
  • queryForList(String sql,Object[] args,class<T>elementType):该方法可以返回多行数据的结果,但必须是返回列表,elementType参数返回的是List元素类型
实例

在这里插入图片描述
在这里插入图片描述

发布了18 篇原创文章 · 获赞 18 · 访问量 1153

猜你喜欢

转载自blog.csdn.net/qq_42542609/article/details/104049387
今日推荐