0

我有一个关于我的简单应用程序的问题我有 2 个单独的 .JSP 文件,比如说 register 和 login.jsp 都具有提交操作,并且这两个 jsp 共享同一个 servlet,比如说 usercontrol.servlet 一旦登录按钮是,我如何调用该操作如果他们共享公共 servlet,是否也与 register.jsp 单击相同?

这是我的 servlet 代码:

if(request.getParameter("register").equals("Register")){
            if(request.getParameter("first") == "" || request.getParameter("middle") == "" || request.getParameter("last") == "" || 
                    request.getParameter("loginid") == "" || request.getParameter("pass") == "" || request.getParameter("pass2")== ""){
                JOptionPane.showMessageDialog(null, "Cannot leave null value from one of the textfields");
                response.sendRedirect("AdminPage/Register.jsp");

            }
            //else if(request.getParameter("pass") != request.getParameter("pass2")){
                //JOptionPane.showMessageDialog(null, "Password Mismatch, Check you password and retype it correctly");
                //response.sendRedirect("AdminPage/Register.jsp");
            //}
            else{
                RegisterUser(request, response);
            }
    }

    else if(request.getParameter("login").equals("Login")){
        if(request.getParameter("username") == ""){
            JOptionPane.showMessageDialog(null, "Username is required");
            response.sendRedirect("AdminPage/Login.jsp");
        }
        else if(request.getParameter("password") == ""){
            JOptionPane.showMessageDialog(null, "Password is required");
            response.sendRedirect("AdminPage/Login.jsp");
        }
        else if(request.getParameter("username") == "" || request.getParameter("password") == ""){
            JOptionPane.showMessageDialog(null, "Password/Username is required");
            response.sendRedirect("AdminPage/Login.jsp");
        }
        else{
            LoginUser(response, request);
        }   
    }

我正在将我的应用程序与休眠集成。

这是我的 jsp 提交按钮我没有包括整个表单我只包括提交按钮。

登录.jsp

<input type="submit" name="login" value="Login" />

注册.jsp

<input type="submit" name="register" value="Register"/>

我的问题是每次我运行应用程序时,它总是执行 if..else 语句中的所有操作,还有其他方法可以解决这个问题吗?

4

1 回答 1

0

在你的jsp中,你应该有提交按钮

对于 login.jsp

<input type="submit" name="login" value="Login"/>

对于 register.jsp

<input type="submit" name="register" value="Register"/>

现在在servlet中你可以检查像

if(request.getParameter("login") != null) {
  // request is comming from login jsp
  // do validation, perform actual transaction 
} else if(request.getParameter("register") != null) {
  // request is comming from register jsp
  // do validation, perform actual transaction 
}
于 2012-10-17T08:42:12.633 回答