`

RowHandler

阅读更多
public class XmlRowHandler implements RowHandler {
	
	StringBuffer xmlresult = new StringBuffer("<UserList>");
	
	public void handleRow(Object valueObject) {
		User user = (User)valueObject;
		xmlresult.append("<User>");
		
		xmlresult.append("<id>");
		xmlresult.append(user.getId());
		xmlresult.append("</id>");
		
		xmlresult.append("<name>");
		xmlresult.append(user.getName());
		xmlresult.append("</name>");
		
		xmlresult.append("<password>");
		xmlresult.append(user.getPassword());
		xmlresult.append("</password>");
		
		xmlresult.append("</User>");
	}

	public String getXmlresult() {
		xmlresult.append("</UserList>");
		return xmlresult.toString();
	}


public void testRowHandler01(){
		Reader reader = null ;
		try {
			reader = Resources.getResourceAsReader("SqlMapConfig.xml");
			SqlMapClient sqlmap = SqlMapClientBuilder.buildSqlMapClient(reader);
			
			XmlRowHandler rh = new XmlRowHandler();
			
			sqlmap.queryWithRowHandler("queryUser03", 1, rh);
			
			System.out.println(rh.getXmlresult());
			
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}


public class FilterHandler implements RowHandler {
	
	private List<User> list = new ArrayList<User> ();
	
	public void handleRow(Object valueObject) {
		User user = (User)valueObject;
		
		if (user.getName().equals("xixi")) {
			list.add(user);
		}
	}

	public List<User> getList() {
		return list;
	}
}



public void testRowHandler02(){
		Reader reader = null ;
		try {
			reader = Resources.getResourceAsReader("SqlMapConfig.xml");
			SqlMapClient sqlmap = SqlMapClientBuilder.buildSqlMapClient(reader);
			
			FilterHandler rh = new FilterHandler();
			
			sqlmap.queryWithRowHandler("queryUser", null, rh);
			
			System.out.println(rh.getList().get(0).getName());
			
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}

分享到:
评论

相关推荐

    IBATIS实用记录

    目 录 1. JAVA基础 3 1.1 二级 3 ...3.3.7 结合RowHandler进行查询(select) 7 3.3.8 分页查询 (select) 7 3.3.9 基于Map的批量查询 (select) 7 4. JAVA基础 8 4.1 二级 8 4.1.1 三级 8 4.1.1.1 四级 8

    bbossgroups 3.1SQLExecutor组件ap使用实例

    例如,使用`executeQuery()`方法可以执行查询语句,它接受SQL语句和一个`RowHandler`对象作为参数,`RowHandler`用于处理每行查询结果。返回的结果通常是一个自定义的对象列表或`ListInfo`对象,`ListInfo`通常用于...

    LigerGrid 行背景颜色设置

    这里,`rowHandler`函数会在每行渲染后被调用,我们通过`dataItem`获取到后台传递的数据,并根据`RowColor`设置对应的行背景色。`tr`是当前行的HTML元素,`css`方法用于修改CSS属性。 最后,项目中的...

    Laravel开发-fibr-csv

    `fibr-csv` 提供了几个有用的方法,如 `beforeImport()`, `afterImport()`, `rowHandler()` 等,让你可以对每一行数据进行预处理或后处理。 4. **运行 Seeder** 最后,确保在 `database/seeds/DatabaseSeeder....

    iBATIS教程 pdf

    - **用RowHandler执行查询(select)**:通过RowHandler接口处理查询结果。 - **查询成PaginatedList(select)**:实现了分页查询的功能。 - **查询成Map(select)**:将查询结果映射到Map对象中。 #### 十一、...

    ibatis学习资料

    - **RowHandler接口**:通过实现`RowHandler`接口来自定义结果集处理逻辑。 #### 事务 - **什么是事务**:事务是一系列操作的集合,要么全部成功,要么全部失败。 - **事务的四大属性ACID** - **原子性(Atomicity...

    详细介绍Ibatis的用法

    - **使用RowHandler执行查询**:通过`queryWithRowHandler`方法将查询结果传递给RowHandler对象进行处理。 #### 日志配置 - **使用Jakarta Commons Logging**:Ibatis默认使用Jakarta Commons Logging作为日志服务...

    ibatis中文api文档

    - 使用RowHandler处理查询结果。 - 查询结果为Map形式。 #### 八、日志配置 - **配置日志服务**:可以通过配置文件指定日志框架,如Jakarta Commons Logging。 #### 九、总结 iBATIS作为一个轻量级的持久层框架,...

    flume-mysql.zip

    agent.sources.mysql-source.resultsethandler = org.apache.flume.source.sql.RowHandler agent.sources.mysql-source.converter = org.apache.flume.sink.kafka.KafkaEventSerializer$JsonEventConverter # 内存...

    FlexiGrid使用教程

    - **rowhandler**: 自定义行点击事件的处理函数。 通过以上配置,我们可以轻松地实现一个功能齐全、界面友好的数据表格。 #### 三、FlexiGrid 进阶使用技巧 除了基本的配置之外,FlexiGrid 还支持更多的高级功能...

    超轻量压缩传输js2java rpc框架(XtZPStream v1.0)

    - **实现原理:** 此功能是通过实现`com.ibatis.sqlmap.client.event.RowHandler`接口来完成的,使得ibatis查询结果可以轻松地逐行输出给浏览器,实现了数据加载过程中的友好交互。 6. **支持回调全异步(观察者...

Global site tag (gtag.js) - Google Analytics