阶段3 2.Spring_09.JdbcTemplate的基本使用_4 JdbcTemplate的CRUD操作
复制demo起名3


保存


update


delete


selct

有这么多的重载方法 如何去定位

可变参数是JDK1.5版本之后才有的东西

RowMapper

实现RowMapper这个接口。然后实现里面的方法



查询的第二个参数就是我们刚才创建的类AccountRowMapper

用List<Account>去接收


DBUtils里面的QueryRunenr也有query方法里面的参数如下


从封装的角度来说。第二个参数 AccountRowMapper和 ResultSetHandler作用是一样的

在DBUtils里面我们用的是BeanHandler
Spring里面也有实现就是BeanPropertyRowMapper

运行效果一样

所以一个对象封装到集合里面。我们不用自己写,使用Spring提供的就可以了
query方法里面有返回List<T> 也有返回类型是T的。也就是说Spring的jdbcTeample是靠实现不同的方法来实现返回

DbUtils中的query方法是靠 resultSetHandler的方法的返回值来决定返回的内容

查询一个

通过isEmpty判断集合是否为空。并返回get(0)也就是第一个值

所以query方法不仅能查询所有,也能查询一个

实际的开发过程中用这种方式比较多
使用聚合
返回值是Object类型的

如果相反会int类型。那么地个人参数就用Integer.class

返回long类型

返回long类型,就long类型来接收


如果返回是值一个大于int的范围,所以就会报错。所以这里一般用long类型来接收
阶段3 2.Spring_09.JdbcTemplate的基本使用_4 JdbcTemplate的CRUD操作的更多相关文章
- 阶段3 2.Spring_09.JdbcTemplate的基本使用_2 JdbcTemplate的概述和入门
先看这张图 1.spring中的JdbcTemplate JdbcTemplate的作用: 它就是用于和数据库交互的,实现对表的CRUD操作 如何创建该对象: ...
- JdbcTemplate实现CRUD操作
------------------siwuxie095 JdbcTemplate 实现 CRUD 操作 1.J ...
- spring jdbcTemplate的CRUD操作
一.jdbcTemplate准备 1.导入与jdbcTemplate相关的jar包 2.设置数据库信息 3.创建jdbcTemplate对象,设置数据源 二.添加操作 1.代码 2.结果 三.修改操作 ...
- 阶段3 2.Spring_09.JdbcTemplate的基本使用_6 JdbcDaoSupport的使用以及Dao的两种编写方式
复制三个出来.分别叫做 OrderDaoImpl.ProductDaoImpl.UserDaoImpl 复制这三个出来就是为了解决重复性代码的问题. 每个dao中都有这段代码.这些都是重复性的代码.在 ...
- 阶段3 2.Spring_09.JdbcTemplate的基本使用_5 JdbcTemplate在spring的ioc中使用
resources下新建File文件 bean.xml 配置jdbcTemplate 注入DataSource 新建测试方法 复制demo1改个名字叫做demo2 编写Insert的方法
- 阶段3 2.Spring_09.JdbcTemplate的基本使用_3 JdbcTemplate在Dao中的使用
实际的开发过程中都是基于dao的 创建持久层dao 定义三个方法 持久层实现类 创建dao的实现类. 添加未实现的方法 通过spring注入 jdbcTemplate.所以这里生成一个jdbcTemp ...
- 阶段3 2.Spring_09.JdbcTemplate的基本使用_1 今日课程内容介绍
- JDBCTemplate执行增删改查(CDUR)操作
1.JdbcTemplate简介 (1)Spring提供的一个操作数据库的技术JdbcTemplate,是对Jdbc的封装.语法风格非常接近DBUtil. JdbcTemplate可以直接操作数据库, ...
- 阶段3 3.SpringMVC·_05.文件上传_4 文件上传之Springmvc方式上传代码
后台提供新的方法,上传的方法复制一份传统上传的代码.改名为fileupload2 配置解析器 名字必须叫做myltipartResolver 里面可以配置一些属性,例如上传文件的大小等. 文件大小 最 ...
随机推荐
- MySQL字段值按照拼音首字母排序
最简单.快速的方法: 将需要进行排序的字段编码设置为GBK,然后在查询时直接使用asc/desc就可以啦
- 最长回文子序列LCS,最长递增子序列LIS及相互联系
最长公共子序列LCS Lintcode 77. 最长公共子序列 LCS问题是求两个字符串的最长公共子序列 \[ dp[i][j] = \left\{\begin{matrix} & max(d ...
- nginx启动、停止、重启
转自https://www.cnblogs.com/wangcp-2014/p/9922845.html 启动 启动代码格式:nginx安装目录地址 -c nginx配置文件地址 例如: [root@ ...
- スワコゥのパーフェクトコード教室 ~ Style of suwakow's for OI Codes
"みんなー! スワコゥのコード教室はじまるよー!" "大家!\(\color{grey}{\text{suwakow}}\)的码风教室开始了哟!" " ...
- graphviz 决策树绘图中文乱码解决方法
1.修改graphviz配置文件 <dir>C:\WINDOWS\Fonts</dir> 更改为 <dir>~/.fonts</dir> 2.将决策树d ...
- PHP开启错误提示而不是单单返回500
方法一 修改php.ini文件和php-fpm.conf php.ini文件在我使用的发行版本/etc/php/<版本号>/cli/php.ini php-fpm.conf文件在/etc/ ...
- Redis常见面试问题及答案
大量key在同一时间过期,注意什么? 如果过期时间过于集中,会导致Redis可能会出现短暂的卡顿现象.严重的话会出现缓存雪崩,一般需要在时间上加一个随机值, 使用过期时间分散一些. Redis分布式锁 ...
- JavaScript RegExp ——对象,语法,修饰符,方括号,元字符,量词,对象方法,对象属性
㈠RegExp 对象 正则表达式是描述字符模式的对象. 正则表达式用于对字符串模式匹配及检索替换,是对字符串执行模式匹配的强大工具. ㈡语法 var patt=new RegExp(pattern,m ...
- 关于session、cookie、sessionStorage、localStorage的简要理解
一.cookie和session 首先session和cookie用于浏览器客户端与服务端进行数据交互,通过会话的方式跟踪浏览器用户身份 (1) cookie 1.1) 一般由服务器生成,可以设置失效 ...
- 51 Nod 不重叠的线段
#include<bits/stdc++.h> #define in(X) scanf("%d",&X) #define out(X) printf(" ...