目前我在工作项目中使用Struts2框架,设计DAO类时我有一个问题,希望能够改进设计模式。
在我的搜索功能中,我有三种搜索方式:
1. 用一个参数进行搜索,另一个则不用;
2. 用多个参数进行搜索;
3. 不使用任何参数进行搜索。
我的问题是,如何最好地实现DAO方法?
在我的Struts2方法中,我有:
在我的搜索功能中,我有三种搜索方式:
1. 用一个参数进行搜索,另一个则不用;
2. 用多个参数进行搜索;
3. 不使用任何参数进行搜索。
我的问题是,如何最好地实现DAO方法?
在我的Struts2方法中,我有:
public String execute() {
//assuming these are passed in from JSP
if ("searchByAnId".equals(paramSearch))
{
List<DTO> datalist = this.someDao.implementList(theIdParam);
} else if("searchByAnOtherParam".equals(paramSearch))
{
List<DTO> datalist = this.someDao.implementAnotherList(param1, param2, param3, param4)
// more params
} else
{
List<DTO> datalist = this.someDao.implementListAll();
}
return "success";
}
我正在阅读有关设计模式的内容,例如工厂方法、装饰器方法和观察者方法,但我不确定哪种方法(或其他任何不使用第三方插件的方法)最适合此情况?