我開發了一個Web應用程序(WebApplication 1),它有1個servlet和許多JSP,並且這個應用程序有一定的功能(可以說No1)。
在該應用程序中,在servlet的processRequest(HttpServletRequest request, HttpServletResponse response)
方法中,有很多if else
語句來檢測用戶想要執行的操作。我建立了我的servlet嗎?
的Servlet
public class MyServlet extends HttpServlet {
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
throws ServletException{
init();
HttpSession session = request.getSession(true);
String jspAction = request.getParameter("action");
if(jspAction.equals("home")){
//do sth
RequestDispatcher disp = getServletContext().getRequestDispatcher("/home.jsp");
disp.forward(request, response);
}else if(jspAction.equals("out")){
//do sth
RequestDispatcher disp = getServletContext().getRequestDispatcher("/out.jsp");
disp.forward(request, response);
}//etc..
}
}
在JSP中的鏈接或一個表單提交有這個鏈接格式MyServlet?action=out
。按照這種方法,我現在有25條if語句。
所以我的問題是:這是建立我的應用程序的正確方法,還是應該爲每個我想要做的功能創建不同的servlet?