困惑-------servlet控制器
最近跟同学在做一个项目练练手,我们用的是servlet做控制器,在设计servlet的时候是由一个请求一个servlet还是N个请求访问一个servlet,出现了意见分歧,争论如下: (1) 使用多个servlet控制程序(一个请求一个servlet)
(2) 使用一个servlet控制程序,实现思路如下:
a. 定义一个接口,定义方法:public String execute(HttpServletRequest
request,HttpServletResponse response); request,HttpServletResponse response);
b. N个实现此接口类,用于控制程序
c. 在工程内添加一个在web.xml中配置 servlet路径
<servlet>
<description>This is the description of my J2EE component</description>
<display-name>This is the display name of my J2EE component</display-name>
<servlet-name>Controller</servlet-name>
<servlet-class>com.common.controller.Controller</servlet-class>
</servlet>
d. 创建servlet--->com.common.controller.Controller 自定义方法 : private VacationAction determinActionByPath(HttpServletRequest
request)
{
//跟据页面提交访问地址判断使用哪个servlet实现类
//返回实现类 }
doGet()
public void doGet(HttpServletRequest request, HttpServletResponse
response)
throws ServletException, IOException {
//调用以上方法得到servlet实现类对象
VacationAction action=(VacationAction)
this.determinActionByPath(request);
//返回String作为判断 String result=action.execute(request, response);
if(null!=result){
request.getRequestDispatcher
(result).forward(request, response);
}
}
doPost()
public void doPost(HttpServletRequest request, HttpServletResponse
response)
throws ServletException, IOException {
this.doGet(request, response);
}
最后我们还是采用的是第一种方案,不知这样是否可以使程序便于扩展各维护。
十分困惑呀。。。。。。