java - 如何使用 servlet/jsp/javabeans 以非常简单的注册表形式存储用户名和密码?

标签 java jsp servlets jakarta-ee

我了解如何使用 session cookie 将用户名和密码从 servlet 传递到 servlet,但我对如何存储成功的注册感到困惑,以便当新人注册时,它会根据该数据存储进行检查,以确保他们选择的用户名尚未使用。

请记住,这一切都不必以任何方式安全,它只需要工作即可。

我有一个表单设置,要求输入用户名、密码和确认密码设置,并将表单数据传递给名为 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>

}

最佳答案

我有一些建议给你。

  • 您正在混合 View 与 Controller 。 不要这样做,请关注 MVC型号
  • 是的,你是对的,用户名/密码应该仅存储在数据库中,使用 JDBC查询您的数据库。
  • 参见Servlet

关于java - 如何使用 servlet/jsp/javabeans 以非常简单的注册表形式存储用户名和密码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5307398/

相关文章:

java - Spring JPA 中的 'default' 类型的分页和排序存储库是什么?

jsp - 在哪里放置我的 taglib 声明?

java.lang.NoClassDefFoundError : org/apache/axiom/om/OMNode

jquery - Ajax Post请求不一致,为什么?

java - 在android中将形状文件或OSM文件显示为 map

java - 更改/检查值的更好方法是什么?

java - 转换字符串; java中的键盘输入

java - 为什么我的简单 Struts2 hello world 不起作用?

java - 未显示 ActionError

java - 文件上传时损坏