首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

迷惑-servlet控制器

2012-11-07 
困惑-------servlet控制器最近跟同学在做一个项目练练手,我们用的是servlet做控制器,在设计servlet的时候

困惑-------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);
               }


   最后我们还是采用的是第一种方案,不知这样是否可以使程序便于扩展各维护。
十分困惑呀。。。。。。
  

热点排行