用户登录注册案例
本案例基于MySQL数据库、JDBC、Servlet、JavaScript、JSP等技术制作完成。
案例效果图:
一、登录界面
二、注册界面
三、源码
LoginServlet类
@WebServlet(name = "LoginServlet", value = "/login")
public class LoginServlet extends HttpServlet {
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
try {
request.setCharacterEncoding("utf-8");
response.setContentType("text/html;charset=utf-8");
//获取用户提交的请求参数
String username = request.getParameter("username");
String password = request.getParameter("password");
//获取用户输入的验证码
String userCode = request.getParameter("usercode");
System.out.println(userCode);
//去获取后台生成的验证码
String serverCode = (String) request.getSession().getAttribute("serverCode");
System.out.println(serverCode);
//为了保证验证码是一次性使用,取完之后,就销毁
request.getSession().removeAttribute("serverCode");
//比对
if(userCode!=null&&userCode.length()==4&&userCode.equalsIgnoreCase(serverCode)){
User user = new User();
user.setUsername(username);
user.setPassword(password);
//登录
User u = Utils.login(user);
if (u != null) {
//用户勾选了记住密码
if (request.getParameter("remember") != null) {
Cookie uCookie = new Cookie("username", u.getUsername());
Cookie pCookie = new Cookie("password", u.getPassword());
uCookie.setMaxAge(60 * 3);
pCookie.setMaxAge(60 * 3);
response.addCookie(uCookie);
response.addCookie(pCookie);
}
//登录成功
request.getRequestDispatcher("/home.html").forward(request, response);
} else {
//登录失败
request.setAttribute("msg", "用户名或密码错误");
request.getRequestDispatcher("/login.jsp").forward(request, response);
}
}else {
request.setAttribute("msg2", "验证码输入错误");
request.getRequestDispatcher("/login.jsp").forward(request, response);
}
} catch (Exception e) {
e.printStackTrace();
}
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
this.doPost(request, response);
}
}
RegisterServlet类
@WebServlet(name = "RegisterServlet", value = "/register")
public class RegisterServlet extends HttpServlet {
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {