创建控制器servlet的最佳设计模式是什么?

时间:2011-12-13 09:26:20

标签: java java-ee

我想知道哪个是创建控制器servlet时最好的servlet模式。

到目前为止,我正在编写像这样的controllerervlet来处理请求

    protected void doPost(HttpServletRequest req, HttpServletResponse resp)
                throws ServletException, IOException {
    String action = req.getParameter("action");
        if (action.equals("LOGIN")){


        }else if(action.equals("Deposit")) {

        }
        else if(action.equals("Withdraw")) {

        } else if(action.equals("view")) {

        }
}

可以这样继续进行,还是有人有更好的方法呢?

这是我的示例html:

<form action="Controller" method="post">
<center><br><br>
<h2><u><i><b>LOGIN SCREEN</b></i></u></h2><br><br><br>
<h4>Enter User Name :<input type=text name="userid" size=6 style="height:20;color=red"><br><br>
 User  Password &nbsp&nbsp&nbsp :<input type=password name ="pwd" size=20><br><br>
<h3>ARE  YOU A NEW USER? THEN REGISTER NOW.</H3>
<input type="hidden" name="action" value="LOGIN">
<input type ="submit" name="login" value="login" >
<input type="button" value="register" onclick="reg()">
</center>
</form>

2 个答案:

答案 0 :(得分:3)

如果您可以调整表单的操作,也许REST(如RESTeasy)符合您的兴趣:

public class Controller {

   @POST
   @Path("/login")
   public String doLogin() {...}

   @POST
   @Path("/view")
   public String showView() {...}  

   ...

答案 1 :(得分:1)

如果您不想使用众多已有的框架中的一个来为您执行此操作,则可以从command pattern开始,将其与工厂和空值对象模式相结合。那只是为了初学者。