锁定老帖子 主题:封装 java Resultset (一)
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2008-05-09
首先说明一下封装Resultset的动机。 java数据库应用比较流行的是用hibernate操作数据库,对于有一群民工手下的IT高级民工来说, 用hibernate确实是一种比较轻松的解决方式。 但在敏捷开发模式下,比如一两个人接个私活什么的,编写hibernate映射文件就变成 无比头痛的一件事。虽然工具可以帮助从数据库中反向生成,但数据库表结构的修改仍然 非常麻烦。 对于熟悉sql和存储过程的开发者来说,直接操作java数据集是比较轻快的解决方式。 但是直接操作数据集,对Connection, Statement, Resultset等对象必须小心翼翼 的关闭,否则服务器一不小心就吐白沫了。与其提心吊胆的关注释放数据库资源对象,不如 把resultset的一系列操作包装起来,省却开发麻烦。 我需要这样的数据库访问类。 查询类 QD: 返回一个查询 : new QD(String sql); 获得一个字段 new QD(String sql).getString(String fieldName); new QD(String sql).getInt(int fieldIndex); ... 同时,因为很多情况下,执行一次查询通常只需要取一个字段的值, 每取得一次值后就在QD的类实现中自动关闭查询打开的数据库资源对象, 这样能相当的简化业务实现部分的代码。 如果需要取多个字段的值,那么就用下面的代码 QD qd = new QD(String sql).setContinousGet(); qd.getInt(...); qd.getDouble(...); .... qd.close(); 遍历QD数据集的方法则简单设计如下 while(qd.next()) { .... } 输出数据集的json字符串[{key1:value1,key2:v2,...}...{..}]; new QD(sql).asJsonObjs(); 输出数据集的json数组字符串[[values1,value2,...],...[...]] new QD(sql).asJsonArray(); 另外,还可以考虑实现类似于jbuilder QueryDataSet的lookup字段 下篇再写QD的实现
声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2008-10-23
如何做到使用hibernate 能够返回一个ResultSet的结果集
|
|
返回顶楼 | |
浏览 4408 次