2011-03-15 20 views
0

我知道如何使用會話cookie將servlet的用戶名和密碼傳遞給servlet,但我很困惑如何存儲成功的註冊,以便當有人註冊時它會根據該數據存儲進行檢查,以確保他們選擇的用戶名具有尚未被使用。如何使用servlet/jsp/javabeans以非常簡單的註冊表格存儲用戶名和密碼?

請記住,這不得不以任何方式安全,它只是要工作。

我有一個表單設置,要求輸入用戶名,密碼並確認密碼設置,並將表單數據傳遞給名爲process的servlet。

對於我的生活,我找不到一個簡單的方法來使這項工作沒有進入更先進的技術,需要數據庫或其他手段。

這裏是我的表單的代碼。任何能夠讓我指向正確方向的東西都會有很大的幫助。謝謝。

package HWpackage; 

import java.io.IOException; 
import java.io.PrintWriter; 
import javax.servlet.ServletException; 
import javax.servlet.http.HttpServlet; 
import javax.servlet.http.HttpServletRequest; 
import javax.servlet.http.HttpServletResponse; 

public class register extends HttpServlet { 


    protected void processRequest(HttpServletRequest request, HttpServletResponse response) 
    throws ServletException, IOException { 
     response.setContentType("text/html;charset=UTF-8"); 
     PrintWriter out = response.getWriter(); 
     try { 
      ///* TODO output your page here 
      out.println("<html>"); 
      out.println("<head>"); 
      out.println("<title>Servlet register</title>"); 
      out.println("</head>"); 
      out.println("<body>"); 
      out.println("<form action='process' method='post'>"); 
      out.println("<table border ='5'>" + 
         "<tr>" + 
         "<th colspan='2'>Register Account Information</th>" + 
         "</tr>" + 
         "<tr>" + 
         "<td>Requested Username:</td>" + 
         "<td><input type='text' name='username' /></td>" + 
         "</tr>" + 
         "<tr>" + 
         "<td>Password:</td>" + 
         "<td><input type='password' name='password' /></td>" + 
         "</tr>" + 
         "<tr>" + 
         "<td>Confirm Password:</td>" + 
         "<td><input type='password' name='password' /></td>" + 
         "</tr>" + 
         "<tr>" + 
         "<th colspan='2'><input type='Submit' value='Submit'><input type='Reset' value='Reset' /></form></th>" + 
         "</tr>" + 
         "</table>"); 
      out.println("</body>"); 
      out.println("</html>"); 
      //*/ 
     } finally { 
      out.close(); 
     } 
    } 

    // <editor-fold defaultstate="collapsed" desc="HttpServlet methods. Click on the + sign on the left to edit the code."> 

    @Override 
    protected void doGet(HttpServletRequest request, HttpServletResponse response) 
    throws ServletException, IOException { 
     processRequest(request, response); 
    } 


    @Override 
    protected void doPost(HttpServletRequest request, HttpServletResponse response) 
    throws ServletException, IOException { 
     processRequest(request, response); 
    } 


    @Override 
    public String getServletInfo() { 
     return "Short description"; 
    }// </editor-fold> 

} 
+2

您需要學習/使用jdbc api。 – adatapost 2011-03-15 04:07:51

+0

從這裏開始:[DAO教程](http://balusc.blogspot.com/2008/07/dao-tutorial-data-layer.html)。它最後提供了一個「註冊用戶」學習示例用例。 – BalusC 2011-03-15 10:56:04

回答

3

我對你有幾點建議。

  • 您正在與控制器混合視圖。 不要這樣做,關注MVC模型
  • 是的,你是對的,用戶名/密碼應該只存儲在數據庫中,請使用JDBC來查詢你的數據庫。
  • Servlet
1

嘗試db4o。它可以將你的對象保存在一行代碼中,而只需在你的類路徑中保存一個jar文件。

db.store(user); 
相關問題