queryRunner 简单使用

总体说明 :
========================================

1 ,不加事务,自动关闭	
	
	private QueryRunner qr = new QueryRunner(C3p0Util.getDataSource());
	
2 ,加事务,手动关闭	
	
	Connection conn = C3p0Util.getConn();
	private QueryRunner qr = new QueryRunner(conn);
	conn.close();
	

增删改
=========================================	
	
//	增
@Test
public void add() throws SQLException {
	String sql = "insert into items values(null,?,?,?,?,?)";
	Items items = new Items();
	items.setId(0);
	items.setCreatetime(new Date());
	items.setDetail("xx");
	items.setName("xx");
	items.setPic("xx");
	items.setPrice(123.456);
	int i = qr.update(sql,items.getName(),items.getPrice(),items.getDetail(),items.getPic(),items.getCreatetime());
	System.out.println(i);
}
//	删
@Test
public void del() throws SQLException {
	String sql ="delete from items where id=?";
	int i = qr.update(sql,7);
	System.out.println(i);
}
//	改
@Test
public void upd() throws SQLException {
	String sql = "update items set name=?,price=?,detail=?,pic=?,createtime=? where id=?";
	Items items = new Items();
	items.setId(5);
	items.setCreatetime(new Date());
	items.setDetail("xx");
	items.setName("xx");
	items.setPic("xx");
	items.setPrice(123.456);
	int i = qr.update(sql,items.getName(),items.getPrice(),items.getDetail(),items.getPic(),items.getCreatetime(),items.getId());
	System.out.println(i);
}
	
	
查 :	
===========================================	
	
1 ,各种结果集	
	
	ArrayHandler		将结果集中的第一条记录封装到一个Object[]数组中,数组中的每一个元素就是这条记录中的每一个字段的值
	ArrayListHandler	将结果集中的每一条记录都封装到一个Object[]数组中,将这些数组在封装到List集合中。
	BeanHandler			将结果集中第一条记录封装到一个指定的javaBean中。
	BeanListHandler		将结果集中每一条记录封装到指定的javaBean中,将这些javaBean在封装到List集合中
	ColumnListHandler	将结果集中指定的列的字段值,封装到一个List集合中
	KeyedHandler		将结果集中每一条记录封装到Map,在将这个map集合做为另一个Map的value,另一个Map集合的key是指定的字段的值。
	MapHandler			将结果集中第一条记录封装到了Map集合中,key就是字段名称,value就是字段值
	MapListHandler		将结果集中每一条记录封装到了Map集合中,key就是字段名称,value就是字段值,在将这些Map封装到List集合中。
	ScalarHandler		它是用于单数据。例如:select count(*) from 表操作。
	
2 ,常用结果集 :	
	
	BeanHandler
	
	BeanListHandler
	
	ScalarHandler
	
3 ,例子 :	
	
	@Test
	public void getOne() throws SQLException {
		String sql = "select * from items where id=?";
		Items i = qr.query(sql, new BeanHandler(Items.class),1);
		System.out.println(i);
	}
	//	查多条
	@Test
	public void getMany() throws SQLException {
		String sql = "select * from items where id in(?,?)";
		Object[] arr = new Object[2];
		arr[0]=1;
		arr[1]=2;
		List list = qr.query(sql, new BeanListHandler(Items.class),arr);
		for (Items items : list) {
			System.out.println(items);
		}
	}
	//	查一个数字
	@Test
	public void getInt() throws SQLException {
		String sql = "select count(1) c from items";
		Integer i = qr.query(sql, new ScalarHandler());
		System.out.println(i);
	}

你可能感兴趣的:(queryRunner 简单使用)