ibatis框架的sqlmapclient接口
SqlMapClient,是iBatis中的重要接口,这个接口涉及到对SQL映射的执行和批处理。
现在,就先了解它的对query开头方法的定义。
首先是 queryForList 方法:
//指定SQL的ID,执行的结果返回List
queryForList(java.lang.String id) ;
//指定SQL的ID,并指定返回的行数
queryForList(java.lang.String id, int skip, int max) ;
//指定SQL的ID,并指定传入参数
queryForList(java.lang.String id, java.lang.Object parameterObject) ;
//指定SQL的ID,并指定传入参数,再指定返回的行数
queryForList(java.lang.String id, java.lang.Object parameterObject, int skip, int max) ;
接着是 queryForMap 方法:
//执行SQL的ID,并把结果中的某一字段作为map的key
queryForMap(java.lang.String id, java.lang.Object parameterObject, java.lang.String keyProp) ;
//同上,并且map中的value是指定的字段,而不是整个返回对象
queryForMap(java.lang.String id, java.lang.Object parameterObject, java.lang.String keyProp, java.lang.String valueProp) ;
再是queryForObject 方法:
//执行指定的SQL ID,并返回一个对象,如果查询出的函数过多,会有异常SQLException抛出
queryForObject(java.lang.String id) ;
//同上,并加上了传递的参数
queryForObject(java.lang.String id, java.lang.Object parameterObject) ;
//同上,并执行的返回对象的引用
queryForObject(java.lang.String id, java.lang.Object parameterObject, java.lang.Object resultObject) ;
最后,是 queryForPaginatedList 方法,也就是针对分页的方法: 但是这个方法已经Deprecated 了, 也就是不赞成使用这个方法了
//这两个方法返回的是 PaginatedList 接口。
//指定查询的SQL ID,并且规定了每页的数量
queryForPaginatedList(java.lang.String id, int pageSize) ;
//同上,并且加上了指定的传参
queryForPaginatedList(java.lang.String id, java.lang.Object parameterObject, int pageSize) ;
最后一个,那就是 queryWithRowHandler,对查询的每一个结果进行处理:
//指定SQL id ,指定传参,并指定处理器
queryWithRowHandler(java.lang.String id, java.lang.Object parameterObject, RowHandler rowHandler) ;
//指定SQL id,指定处理器
queryWithRowHandler(java.lang.String id, RowHandler rowHandler) ;
现在了解一下这个 RowHandler 这个接口。
此接口只有一个定义方法:handlerRow(java.lang.Object valueObject)
所以,通常我们都实现这个接口,因为对每一个处理都是我们自己的需求。
其中的传入属性就是每一行的对象
注:该文章转载:http://njupt.iteye.com/blog/320238
ibatis框架的sqlmapclient接口的更多相关文章
- 【转】深入分析 iBATIS 框架之系统架构与映射原理
深入分析 iBATIS 框架之系统架构与映射原理 iBATIS 通过 SQL Map 将 Java 对象映射成 SQL 语句和将结果集再转化成 Java 对象,与其他 ORM 框架相比,既解决了 Ja ...
- 深入分析 iBATIS 框架之系统架构与映射原理--转载
http://www.ibm.com/developerworks/cn/java/j-lo-ibatis-principle/ iBATIS 通过 SQL Map 将 Java 对象映射成 SQL ...
- spring+struts2+ibatis 框架整合以及解析
一. spring+struts2+ibatis 框架 搭建教程 参考:http://biancheng.dnbcw.net/linux/394565.html 二.分层 1.dao: 数据访问层(增 ...
- Ibatis框架之系统架构
如果用最简洁的话来总结 iBATIS 主要完成那些功能时,我想下面几个代码足够概括. Class.forName("oracle.jdbc.driver.OracleDriver" ...
- 深入分析 iBATIS 框架之系统架构与映射原理
iBATIS 框架主要的类层次结构 总体来说 iBATIS 的系统结构还是比较简单的,它主要完成两件事情: 根据 JDBC 规范建立与数据库的连接: 通过反射打通 Java 对象与数据库参数交互之间相 ...
- iBATIS 框架主要的类层次结构
iBATIS 框架主要的类层次结构 总体来说 iBATIS 的系统结构还是比较简单的,它主要完成两件事情: 根据 JDBC 规范建立与数据库的连接: 通过反射打通 Java 对象与数据库参数交互之间相 ...
- iBatis框架batch处理优化 (转)
为什么要做batch处理 这个问题我就不解释了,因为我想你们肯定能比我解释的更好!如果你真的不知道,那就到Google上去搜索一下吧☻Oracle回滚段 这个问题偶也不很明白,只是 ...
- iBatis框架基本使用
iBatis框架是Java持久层开发框架,说白了就是前人写了一部分代码(针对数据库操作),我们要做的就是再次开发,拿来框架直接使用. 我们自己开发时,dao层的sql语句都是写死在程序中的,如果查询条 ...
- iBatis框架简介
一.为啥使用iBatis? 在 Hibernate.JPA 这样的一站式对象 / 关系映射(O/R Mapping)解决方案盛行之前,iBaits 基本是持久层框架的不二选择.即使在持久层框架层出不穷 ...
随机推荐
- 关于Silverlight调用天气预报接口问题
问题:因Silverlight客户端不能直接调用webservice接口(外网天气接口),调用会出现跨域访问的问题,即使添加了跨域文件也不好使.解决方法如下 解决方法一:1.在服务端建立一个wcf服务 ...
- 将word中的“空格” 转换为换行符
- Android砖机救活(索爱MT15i)
前言 接触Android时间长了就想编译一套属于自己的系统,摘取不必要的那些组件,然后刷到手机上,俗话说的好,“常在河 边走,哪有不湿鞋”.果不其然,刷完自己编译的系统手机变砖了,具体情况为 开不开机 ...
- 打包python脚本为exe可执行文件-pyinstaller和cx_freeze示例
本文介绍使用cx_freeze和pyinstaller打包python脚本为exe文件 cx_freeze的使用实例 需要使用到的文件wxapp.py, read_file.py, setup.py ...
- SQLIO Disk Subsystem Benchmark Tool
C:\Program Files (x86)\SQLIO>sqlio -? sqlio v1.5.SG -?: invalid option Usage: sqlio [options] [&l ...
- VS2010打开VS2012解决方法
VS2012中对C#的支持度非常好,不管是编写方便程度(不需要插件就能高亮代码及代码自动提示功能),还对MFC的一些功能优化很多. 我们可以修改两个工程文件来把VS2012的工程文件一直到VS2010 ...
- SQL的自增列如何重置
第一种方法:首先去除该列自增的标识,然后再修改id的值,成功修改后,再加上自增标识:如果不修改自增标识,会报错:“无法更新标识列”. 第二种方法:删除该自增列,而后重建一个自增列.
- 关于Oracle表空间数据文件自增长的一些默认选项
昨天,一个同事请教了一些关于Oracle表空间数据文件自增长的问题,解答过程中顺便整理起来,以后其他同事有同样的疑问时可以直接查阅. 实验内容: 创建MYTEST表空间,默认不开启自增长. 给MYTE ...
- 【Ajax】脑补一下 ajax 的options
问题是因为粉红色部分引起的 ,想搞明白 put delete 的应用场景,发现ajax的一些属性也没有完全用过. 参数名 类型 描述 url String (默认: 当前页地址) 发送请求的地址. t ...
- Java枚举常见7种用法
DK1.5引入了新的类型——枚举.在 Java 中它虽然算个“小”功能,却给我的开发带来了“大”方便.用法一:常量在JDK1.5 之前,我们定义常量都是: publicstaticfianl…… .现 ...