我将为我的应用程序设计一个DAO层。我的重点是,服务只是调用独立于实施的DAO。Generic Dao和服务层
public interface GenericSearchDao{
List getAll();
List getByQuery(String query);
}
public class UserJdbcSearch implements GenericSearchDao{
public List getAll(){
// Get all users;
}
List getByQuery(String query){
// Get users by query;
}
}
public class UserFileSystemSearch implements GenericSearchDao{
public List getAll(){
// Get all users from file system;
}
List getByQuery(String query){
// Get users by query[this leads to invalid operation];
}
}
public userService {
private GenericSearchDao dao = new UserFileSystemSearch();
public List getUsers(){
rturn dao.getAll();
}
public List getByQuery(String query){
return dao.getByQuery(query);
}
}
帮助要求:
我应该做的就是从'getByQuery(查询)的具体implementaions去掉,因为数据存储可以是RDBMS,文件系统,FTP等
我应该如何一般设计我的Dao层?
如果任何一个人说,“从GenericSearchDao删除getByQuery()”,那么我应该在的情况下做的,我需要具体到经营数据如:与角色,与产品等用户用户..
Copypaste bug! 'Stirng'。 – BalusC 2011-04-28 21:40:41
谢谢,纠正 – Zeeshan 2011-04-28 21:45:58