最近更新文章
Generic Data Access Objects -范型DAO类设计模式
Generic Data Access Objects 普通数据访问对象,这个是Hibernate官方网站上面的一个DAO类的设计模式,基于JDK5.0范型支持,文章地址如下: http://www.hibernate.org/328.html 我下面的代码与Hibernate官网上提供的有点不同。 首先定义DAO类的接口IGenericDAO,该接口定义了共同的CRUD操作: java 代码 ...
DAO 设计4、事务处理(1)
事务的处理从来都是“三部曲”: java 代码 try { begin(); // ... commit(); } catch (Exception e) { rollback(); } 在 JDBC 中,调用事务处理并不复杂,因为 Connection 类提供了现成的方法,就是 setAutoCommit() 、commit() 和 rollback()。 ...
DAO 设计3、数据库连接的管理
DAO 类是线程安全的,它的所有操作都通过调用 DbExecutor 对象来执行。每次操作,DAO 都会从 DbExecutorFactory 中获得一个 DbExecutor 对象。DAO 要做的就是保证做完操作之后都要执行 DbExecutor 对象的 close 方法。 DbExecutor 是一个接口,它的大部分方法和 DAO 差不多。它包含一个数据库连接,当连接关闭时,DbExecu ...
DAO 设计2、查询方式的设计
创建了一个 DAO 类用来做所有的事情,包括查询。查询方法如下: java 代码 public List query(Class clazz, String sql, List params) throws DAOException; 第一个参数是用来接受封装的类。 有时候仅查询一个字段,根本不用封装: java 代码 public List query(String sql, ...
DAO 设计1、DAO 配置文件的设计
没有哪个 DAO 能够包揽所有的数据库管理。每种 DAO 都有各自的定位。我们公司的项目有这样一些特点: 所用数据库都是 Oracle; 使用一些已有的数据库表; 查询语句要经过优化,DBA 要对其字斟句酌; 同时连接多个数据库。 我们的项目大都会用到一些其他系统现有的表。有的表包含四五十个字段,而对于某些业务逻辑来讲只需要查询一两个字段的值。DBA 强烈反对“select * ”,对关联查询、 ...
单元测试之实践二,关于DAO的测试
前阵子发表过 我的第一个真正意义上的测试 。 里面对于测试Service大家是没有意义的,对于测试DAO层则表现各有各的看法。 比如 robbin 大哥建议: 测试DAO不如连数据库一起测试吧。因为DAO测试的目的不是DAO接口实现对不对,而是测试是否如你预期的发送了SQL,如你预期的返回了结果集。这个时候你Mock之后,测试就没有意义了。 hyysguyang 大哥建议:篇 wuhua 写 ...
解惑 spring 嵌套事务
解惑 spring 嵌套事务 /** * @author 王政 * @date 2006-11-24 * @note 转载请注明出处 */ 在所有使用 spring 的应用中, 声明式事务管理可能是使用率最高的功能了, 但是, 从我观察到的情况看, 绝大多数人并不能深刻理解事务声明中不同事务传播属性配置的的含义, 让我们来看一下 TransactionDefinition 接口中的定 ...
在DAO中对Hibernate进行封装(新)
偶然看见 l_walker于2003-9-15写的一篇关于在DAO中对Hibernate的封装的文章被置于精华。再回想起我去年在自己的项目开发中使用的一种封装方法,觉得完全是另外一种思路。所以拿出来和大家讨论,说不定运气好也会被置为精华 . 请看封装后的调用代码: /** * 用于管理...的Oracle dao * <p>Company:... </p> * @a ...
群组知识库热门文章
- 4357 解惑 spring 嵌套事务
- 3663 DAO 设计1、DAO 配置文件的设计
- 3403 Generic Data Access Objects -范型DAO类设计模式
- 3279 在DAO中对Hibernate进行封装(新)
- 3256 DAO 设计2、查询方式的设计