dao查询的一点想法

07-06-18 Ericx
dao 查询的一点想法

最近在做东西时突发奇想,对实体的各种查询 可不可以进行封装?

我没什么经验,请大家赐教

我的思路是 使用命令模式。CommandFactory 负责所有查询命令的创建,QueryCommand就是具体的命令,

public class QueryCommand {

private String from;//从哪里查询

private object orderBy;//排序

private object[] params;//按照属性查询

.........................

public String generateQueryString(){

........................

}

}

这样DAO层只需要实现一个Find 方法接受QueryCommand 参数就可以进行查询了

那么仓储的实现 也就 可以通过Ioc 依赖注入相应的DAO 实现对象的创建了

这样也就避免了仓储和Dao同时对底层数据库产生依赖,如果需要对底层解耦只需在Dao层下功夫就可以了

请大家赐教##

Ericx
2007-06-18 17:48
当然也可以进行进一步的封装,进行更复杂的查询

我只是举个例子

banq
2007-06-19 15:24
是的,可以的。

JiveJdon3中查询也就是这么做的。查询或简单insert update操作都可以通过一个jdbcTemp实现。

Ericx
2007-06-20 12:58
还 是 要多 研究 一下 banq的 代码了

^^

猜你喜欢