欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

DbUtils是Apache组织提供的一个对JDBC进行简单封装的开源工具类库

程序员文章站 2022-05-19 18:55:17
...
DbUtils是Apache组织提供的一个对JDBC进行简单封装的开源工具类库,使用他能够简化JDBC应用程序的开发,同时也不会影响程序的性能.

DbUtils的增删改的操作:
	@Test
	/**
	 * 添加操作
	 */
	public void demo() throws SQLException{
		// 创建核心类: QueryRunner
		QueryRunner queryRunner = new QueryRunner(JDBCUtils2.getDatasource());
		queryRunner.update("insert into account values (null,?,?)","lwh",10000);
	}

	@Test
	/**
	 * 删除操作
	 */
	public void demo3() throws SQLException{
		// 创建核心类
		QueryRunner queryRunner = new QueryRunner(JDBCUtils2.getDatasource());
		queryRunner.update("delete from account where id = ?",4);	
	}
	
	@Test
	/**
	 * 修改操作
	 */
	public void demo2() throws SQLException{
		// 创建核心类
		QueryRunner queryRunner = new QueryRunner(JDBCUtils2.getDatasource());
		queryRunner.update("update account set name = ?,money = ? where id = ?","浩",10000,4);
	}
	
查询操作
ResultSetHandler的实现类:
	@Test
	/**
	 * 重要
	 * BeanHandler:将一条记录封装到一个JavaBean中
	 */
	public void demo3() throws SQLException{
		QueryRunner queryRunner = new QueryRunner(JDBCUtils2.getDatasource());
		Account account = queryRunner.query("select *from account where id = ?", new BeanHandler<Account>(Account.class), 1);
		System.out.println(account);
	}
	@Test
	/**
	 * 重要
	 * BeanListHandler:将多条记录封装到一个装有JavaBean的List集合中。 
	 *  一条记录就是一个Java的对象(JavaBean),如果多条记录(多个Java的对象),将多个Java对象装到一个List集合中。
	 */
	public void demo4() throws SQLException{
		QueryRunner queryRunner = new QueryRunner(JDBCUtils2.getDatasource());
		List<Account> list = queryRunner.query("select * from account", new BeanListHandler<Account>(Account.class));
		for (Account account : list) {
			System.out.println(account);
		}
	}
	@Test
	/**
	 * 重要
	 * MapHandler:将一条记录封装到一个Map集合中,Map的key是列名,Map的value就是表中列的记录值。
	 */
	public void demo5() throws SQLException{
		QueryRunner queryRunner = new QueryRunner(JDBCUtils2.getDatasource());
		Map<String, Object> map = queryRunner.query("select * from account where id = ?", new MapHandler(), 1);
		System.out.println(map);
	}
	@Test
	/**
	 * 重要
	 * MapListHandler:将多条记录封装到一个装有Map的List集合中。
	 */
	public void demo6() throws SQLException{
		QueryRunner queryRunner = new QueryRunner(JDBCUtils2.getDatasource());
		List<Map<String,Object>> list = queryRunner.query("select * from account", new MapListHandler());
		for (Map<String, Object> map : list) {
			System.out.println(map);
		}
	}
	@Test
	/**
	 * 重要
	 * ScalarHandler:单值封装
	 */
	public void demo8() throws SQLException{
		QueryRunner queryRunner = new QueryRunner(JDBCUtils2.getDatasource());
		Object object = queryRunner.query("select count(*) from account ", new ScalarHandler());
		System.out.println(object);
	}