如何重定向到成功的页面?

时间:2014-07-18 21:27:16

标签: java mysql jsp servlets

我尝试了什么:

我正在尝试设置一个基本的登录系统。用户通过身份验证后,如何将他/她重定向到另一个页面?

我已尝试使用actionRequest.sendRedirect,但它也无效。我收到一个错误。

这是我的代码:

  protected void doPost(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        response.setContentType("text/html;charset=UTF-8");
        PrintWriter out = response.getWriter();
        String first_name = request.getParameter("first_name");
        String last_name = request.getParameter("last_name");
        String display_name = request.getParameter("display_name");
        String email = request.getParameter("email");
        String pass = request.getParameter("pass");
        try{
        //loading driver 
        Class.forName("com.mysql.jdbc.Driver");

    //creating connection with the database 
          Connection  con=DriverManager.getConnection
                     ("jdbc:mysql://localhost:3306/project","root","password");
        PreparedStatement ps=con.prepareStatement
                  ("insert into User values(?,?,?,?,?)");
        ps.setString(1, first_name);
        ps.setString(2, last_name);
        ps.setString(3, display_name);
        ps.setString(4, email);
        ps.setString(5, pass);
        int i=ps.executeUpdate();
        if(i>0)
        {
            System.out.println("Registration Successful on backend!");
            actionResponse.sendRedirect("twitterResult.jsp");  **//GIVES ERROR**
        }

        }catch(Exception se)
        {
            se.printStackTrace();
        }   
      }

问题:

如果用户成功通过身份验证(i> 0),如何重定向到另一个页面,例如home.jsp或其他某个页面?

请帮忙!

3 个答案:

答案 0 :(得分:3)

您的引用应为response,没有名为actionResponse

的符号

将其更改为

response.sendRedirect("twitterResult.jsp");

答案 1 :(得分:3)

您也可以使用requestdispatcher接口

 <%
 RequestDispatcher rd = request.getRequestDispatcher("twitterResult.jsp");
 rd.forward(request, response);
%>

答案 2 :(得分:2)

你也可以使用前进动作从一个jsp移动到另一个

  <jsp:forward page="twitterResult.jsp" />