Java Web实现登录注册(超详细附代码)
warning:
这篇文章距离上次修改已过192天,其中的内容可能已经有所变动。
以下是一个简单的Java Web登录和注册示例,使用Servlet和JSP实现。
- 创建一个名为
User
的Java类来表示用户。
public class User {
private String username;
private String password;
// 构造函数、getter和setter省略
}
- 创建一个名为
LoginServlet
的Servlet来处理登录请求。
@WebServlet("/login")
public class LoginServlet extends HttpServlet {
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String username = request.getParameter("username");
String password = request.getParameter("password");
// 这里应该是用户验证的逻辑,例如查询数据库
// 假设硬编码的用户名和密码用于测试
String correctUsername = "user1";
String correctPassword = "pass123";
if (username.equals(correctUsername) && password.equals(correctPassword)) {
// 登录成功,重定向到主页或其他页面
response.sendRedirect("index.jsp");
} else {
// 登录失败,保留用户输入,返回登录页面并显示错误信息
request.setAttribute("errorMessage", "登录失败,用户名或密码错误");
request.getRequestDispatcher("login.jsp").forward(request, response);
}
}
}
- 创建一个名为
RegisterServlet
的Servlet来处理注册请求。
@WebServlet("/register")
public class RegisterServlet extends HttpServlet {
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String username = request.getParameter("username");
String password = request.getParameter("password");
// 这里应该是将用户信息添加到数据库的逻辑
// 假设硬编码的用户信息用于测试
// 注册成功,重定向到登录页面
response.sendRedirect("login.jsp");
}
}
- 创建登录页面
login.jsp
。
<html>
<body>
<form action="login" method="post">
用户名: <input type="text" name="username" /><br />
密码: <input type="password" name="password" /><br />
<input type="submit" value="登录" />
<% if(request.getAttribute("errorMessage") != null) { %>
<p style="color: red"><%= request.getAttribute("errorMessage") %></p>
<% } %>
</form>
<a href="register.jsp">注册</a>
</body>
</html>
- 创建注册页面
register.jsp
。
<html>
<body>
<form action="register" method="post">
用户名: <input type="text" name="username" /><br />
密码: <input type="password" name="password" /><br />
<input type="submit" value="注册" />
</form>
<a href="login.jsp">登录</a>
</body>
</html>
评论已关闭