Spring框架

40 篇文章 0 订阅
40 篇文章 0 订阅

7.3 持久化操作

  1. 增删改

JdbcTemplate.update(String, Object...)

  1. 批量增删改

JdbcTemplate.batchUpdate(String, List<Object[]>)

                  Object[]封装了SQL语句每一次执行时所需要的参数

                  List集合封装了SQL语句多次执行时的所有参数

  1. 查询单行

JdbcTemplate.queryForObject(String, RowMapper<Department>, Object...)

  1. 查询多行

JdbcTemplate.query(String, RowMapper<Department>, Object...)

RowMapper对象依然可以使用BeanPropertyRowMapper

  1. 查询单一值

JdbcTemplate.queryForObject(String, Class, Object...)

 

7.4 使用具名参数的JdbcTemplate

  1. 关于具名参数

在Hibernate的HQL查询中我们体验过具名参数的使用,相对于基于位置的参数,具名参数具有更好的可维护性,在SQL语句中参数较多时可以考虑使用具名参数。

在Spring中可以通过NamedParameterJdbcTemplate类的对象使用带有具名参数的SQL语句。

  1. 通过IOC容器创建NamedParameterJdbcTemplate对象

<!-- 配置可以使用具名参数的JDBCTemplate类对象 -->

<bean

         id="namedTemplate"

         class="org.springframework.jdbc.core.namedparam.NamedParameterJdbcTemplate">

         <!-- 没有无参构造器,必须传入数据源或JdbcTemplate对象 -->

         <constructor-arg ref="dataSource"/>

</bean>

 

  1. 具名参数在SQL语句中的格式

INSERT INTO depts (dept_name) VALUES (:deptName)

 

  1. 具名参数传入

①通过Map对象传入

NamedParameterJdbcTemplate.update(String sql, Map<String, ?> map)

Map的键是参数名,值是参数值

② 通过SqlParameterSource对象传入

String sql = "INSERT INTO depts (dept_name) VALUES (:deptName)";

Department department = new Department(null, "YYY", null);

SqlParameterSource sqlParameterSource =

                   new BeanPropertySqlParameterSource(department);

namedTemplate.update(sql, sqlParameterSource);

 

 

 

本教程由尚硅谷教育大数据研究院出品,如需转载请注明来源。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值