2014-10-02 82 views
-2

嗨我可以在我的jsp中獲取會話值,現在我想比較會話值是否匹配文本框,如果匹配,它會將用戶重定向到另一個頁面否則它將保持相同的頁面,我不知道如何繼續,請幫助。非常感謝!比較會話值是否與文本框的值相匹配

JSP

<!DOCTYPE html> 
<html> 
<head> 
<meta charset="ISO-8859-1"> 
<title>Factorial</title> 
</head> 
<body> 
<form action="fact" method="POST"> 
Enter a number: <input type="text" name="num"> 
<input type="submit"/> 
<%= session.getAttribute("money") %>, 
</form> 
</body> 
</html> 

的Servlet

protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { 
    // TODO Auto-generated method stub 

    HttpSession session = request.getSession(); 

     String text = request.getParameter("money"); 

     int money = (Integer)session.getAttribute("money"); 

     String testing = String.valueOf(money); 

    if(text == testing) 
    { 

    RequestDispatcher rd = request.getRequestDispatcher("MainPage"); 
    rd.forward(request, response); 
} 
else 
{ 
    response.redirect("Errorpage.jsp"); 
} 
+0

請提供您的代碼示例,並解釋您到目前爲止所嘗試的內容。 <!DOCTYPE HTML> – deyur 2014-10-02 03:11:00

+0

<元的charset = 「ISO-8859-1」> 階乘 <形式行動= 「事實」 方法= 「POST」> 輸入一個數字: <%= session.getAttribute( 「NUM」)%>,的 – Programm3r 2014-10-02 03:39:26

+0

可能重複的[如何比較Java中的字符串?](http:// stacko ver10.com/questions/513832/how-do-i-compare-strings-in-java) – 2014-10-02 12:33:53

回答

0

假設你已經得到了所謂的 「錢」 會話屬性,你就不需要從JSP

<body> 
    <form action="fact" method="POST"> 
    Enter a number: <input type="text" name="num"> 
    <input type="submit"/> 
    </form> 
    </body> 




    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { 



      HttpSession session = request.getSession(); 

       String text = request.getParameter("num"); 

       int money = (Integer)session.getAttribute("money"); 

       String testing = String.valueOf(money); 

      if(testing.equalsIgnoreCase(text)) 
      { 

      RequestDispatcher rd = request.getRequestDispatcher("MainPage"); 
      rd.forward(request, response); 
     } 
     else 
     { 
      response.sendRedirect("Errorpage.jsp"); 
     } 
     } 

訪問如果你還沒有創建一個叫做「錢」的會話屬性,並且想用jsp創建它,你必須使用S criptlet。

 <body> 
     <form action="abc.do" method="POST"> 
     Enter a number: <input type="text" name="num"> 
     <input type="submit"/> 
     <% session.setAttribute("money",1000); %>, 
     </form> 
     </body> 
+0

它不會重定向到if語句中的url.MainPage是一個servlet或.jsp文件 – Programm3r 2014-10-02 08:34:56

相關問題