DBUtils
DBUtils是能够帮助我们将数据库中的数据封装成相应的javabean实体的工具。
1.javabean =实体bean
对于javabean来说必须满足如下的规则:
-
私有化属性
-
公共的getter/setter
-
无参数的构造器
2.在项目中使用DBUtils
1)导包
2)建立javabean,注意javabean中属性的名字一定要和数据库中表的字段名保持一致
3)创建核心对象QueryRunner,在构造器中传递连接池对象
4)执行QueryRunner的query或update方法
-
query(String sql, 结果集处理器对象,参数列表) :返回一个封装好的结果Object
-
sql: 要执行的sql语句
-
结果集处理器对象:希望生成的是怎样的结果,就用相应的结果集处理器。常用的有:
BeanHandler、BeanListHandler、MapHandler、MapListHandler、ScalarHandler
结果集处理器中需要指明产生的结果类型的泛型和字节码对象。比如:
new BeanHandler<User>(User.class)
-
-
update(String sql,参数列表)方法:返回受影响的行数int
-
代码实现如图:
-
//1.创建核心对象QueryRunner,通过构造器传递连接池对象 QueryRunner qr = new QueryRunner(C3P0Util.getDataSource()); //2.执行查询操作,获得封装的javabean实体 String sql = "select * from user where username=? and password=?"; user = qr.query(sql, new BeanHandler<User>(User.class),username,password);
3、结果集说明
-
1、BeanHandler<>():获得一个JavaBean对象
-
2、BeanListHandler<>():获得一个装着多个JavaBean对象的list集合
-
3、MapHandler():生成一个map集合,这个map表示一条记录。里面封装着数据库表中字段名各对应的字段值的多个键值对。
-
4、MapListHandler():生成一个list集合,集合中是多个map集合,每个map是一条记录,每个map里存放记录对应的字段和字段值的多个键值对。
-
5、ScalarHandler():对于聚合函数来说,可以用这个结果集处理器来获得结果。(获得的返回值为Long型,不可以强转,用intvalue方法转成int值 )
-
-
-