我將爲我的應用程序設計一個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