版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、1、使用JdbcTemplate的execute0方法执行SQL语句Java代码jdbcTemplate. execute(*CREATE TABLE USER (user_id integer, name varchar (100)w);2、如果是UPDATE或INSERT,可以用update()方法。Java代码1. jdbcTemplate. update(MINSERT INTO USER VALUES(r2.+3.+1.+5.user, get Id ()+ 八.user getName() + user .getSexO +user. getAgeO +*)*);3、带参数的更新J
2、ava代码 1. jdbcTemplate. update(UPDATE USER SET name = ? WHERE user_id 二? new Obj ect namet id);Java代码1. jdbcTemplate. update(MINSERT INTO USER VALUES(?.?.?) new Object uscr. get Id (). user getNeuneO . user getSexO usei* getAgeO);4、使用JdbcTemplate进行查询时,使用queryForXXX()等方法Java代码1. int count = jdbcTempla
3、te. queryEorlnt(SELECT COUNT() FROM USER”);Java代码1. String name 二(String) jdbcTemplate. queryEorObject(SELECT name FROM USER WHERE user id - ? new Object id. java.1ang.String.class);Java代码】.List rows = jdbcTemplate. queryForList(HSELECT FROM ISER*);Java代码 1. List rows 二 jdbcTemplate. queryForList(SE
4、LECT I;ROM ISER);2. Iterator it = rowsiterator();3. wh订e (it. hasNext () 1.Map userMap = (Map) i t.next ();5.System. out print(userMap. get(Muser id”)+ ntjdbcTemplate.update(MINSERT INTO USER VALUES (?.?.?) new PreparedStatementSetter() public void setVa1ues(PreparedSt atemcnt ps) throws SQLExceptio
5、n );6.System out print (userMap. get(name*) +ntn);7.System. out print(userMap. get(sex”)+*&9.System. out print ln(user(ap. get (age)+JdbcTemplate将我们使用的JDBC的流程封装起来,包括了异常的捕捉、SQL的执行、 查询结果的转换等等。spring大量使用Template Method模式来封装固定流程的动作, XXXTemplate等类别都是基于这种方式的实现。除了大量使用Template Method来封装一些底层的操作细节,spring也大量使用
6、 callback方式类回调相关类别的方法以提供JDBC相关类别的功能,使传统的JDBC的使用 者也能淸楚了解spring所提供的相关封装类别方法的使用。JDBC 的 PreparedStatement9.10.ps. setStri ng(1 ps. setString(2nam11.12.e);ps.setString(3ps. set 1 nt (1. age);sex);Java代码finalString id =-user getld();finalString name=user. getNameO ;finalString sex= user getSex() +”;finali
7、nt age =user get Age ():13.Java代码1.final User user = new User();2.jdbcTemplate. query C*SELECT * FROMUSER WHERE user_id = ?3.new Object id.4.new Roual Ibackllandler ()(5.public void processRow(Resu1tSet rs) throws SQLException 6.r_id”);7.amew);&x”). charAt (0):9.w);10.】1user. setld(rs getString(wuse
8、user. setName(rs getString(nuser.setSex(rs getString(Mse user. set/ge(rs get IJava代码1.class2.UserRowMapper implements RowMapper public Object mapRow(ResuItSet rs. int index) throws SQLExcept io3.User user 二 new User ():5.6.7.user setld(rs getString(user id”):user. setName (rs. getStringCrnamcw):user
9、. setSex(rs getString(,sexr) charAt (0); user.setAge(rs getInt(*age*);9.10.return user;11.12. 13.);11. public15.】6.er();17. List f ind.Al lByRowMapperResul tReader ()String sql = ”SELECT * FROM USER:return jdbcTemplate. query(sq1. new RowilapperResultReader(new UserRowMapp在 getUser (id)里面使用 UserRowM
10、apperJava代码public User getUser(final String id) throws DataAccessExcept i on 2. String sql = ” SELECT FROM USER WHERE userJd=?M;3. final Object params = new Object id ;List list = jdbcTemplate .query(sql. params, new RowMapperResultReader(new UserRowMapper();5.6. return (User) 1ist. get(0);7. 网上收集or
11、g. springframework, jdbc. core. PreparedStatementCreator 返回预编译 SQL 不能 于Object】一起用Java代码public PreparedStatement createPreparedStatement(Connect ion con) throws SQLExce ption 2 return con prepareStatement(sql);| 3.1. 增删改org. springframework. jdbc. core. JdbcTemplate 类(必须指定数据源 dataSource)Java 代码1. tem
12、plate update(Minsert into web_person valucs(?)wtObject);或Java代码template .update(insert into web_person values(?)new PreparedStatementSett er()匿名部类 只能访问外部最终局部变量2.3. public void setValues(PreparedStatement ps) throws SQLException 1.ps. setInt(index+.3);5.);org. springframework, jdbc. core. PreparedSta
13、tementSetter 接口 处理预编译 SQLJava代码1. public void setValues(PreparedStatement ps) throws SQLException 2. ps. setlnt(index+t3):3. )2. 查询JdbcTemplate query(String,Object/PreparedStatementSetter,RowMapper/Roua1 lb ackHandler)org. springframework. jdbc. core. RowMapper 记录映射接口 处理结果集Java代码 public Object mapRow(Resu1tSet rs int argl) throws SQLException int表当前行数2. person set Id(rs getlnt(id);3. )1. List template.qucry(”select * from web person where id-?0bjectRowikipper);otg springframework, jdbe. core. RowCalIback
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 佛协办公室工作制度
- 临沂万德福工作制度
- 120值班工作制度
- 介入科主任工作制度
- 肺部疾病患者的家庭护理
- 上海支付宝工作制度
- 办事处人员工作制度
- 办公室督察工作制度
- 动物园一日工作制度
- 区残联安全工作制度
- (高级)起重装卸机械操作工(叉车司机)技能鉴定理论考试题库(含答案)
- DL∕T 700-2017 电力物资分类与编码导则
- 四川省德阳市德阳中学2023-2024学年七年级下学期期中数学试卷
- 年产5万吨丙烯直接水合制备异丙醇工艺Aspen模拟
- 《电力设备消防典型准则》(DL5027-2022)
- 最全看图猜成语 课件
- HSK三级真题与答案下载(第一套)
- 发电厂电气部分第五版苗世洪课件演示文稿
- 全国护理技能大赛(高职)备考试题库(案例分析题汇总)
- 转子动力学基本理论
- GB/T 3994-1983粘土质隔热耐火砖
评论
0/150
提交评论