模式将搜索模型转移到dao

时间:2010-05-25 09:53:22

标签: java design-patterns dao

我们有一个dao作为项目(jar文件)。

客户端使用其接口和工厂来操作数据库。

除了标准的CRUD操作,dao还允许您通过某些搜索条件搜索实体。

表示此标准的最佳方式是什么?

在这种情况下转移对象是否合适?

客户端应如何创建SearchModel实例?

请分享。

问候。

1 个答案:

答案 0 :(得分:3)

我通常使用通用DAO:

package persistence;

import java.io.Serializable;
import java.util.List;

public interface GenericDao<T, K extends Serializable>
{
    T find(K id);
    List<T> find();
    List<T> find(T example);
    List<T> find(String queryName, String [] paramNames, Object [] bindValues);

    K save(T instance);
    void update(T instance);
    void delete(T instance);
}

这允许我使用带有绑定参数的命名查询并通过示例查询。我发现它足够灵活,可以满足我的大多数需求。