From 6caeae8c12b68e27d7879ddad4ca1191f55ea9c0 Mon Sep 17 00:00:00 2001
From: pght2c95q <2582048197@qq.com>
Date: Sun, 15 Dec 2024 14:58:15 +0800
Subject: [PATCH] Update MemberLoginServlet.java
---
.../com/cn/servlet/MemberLoginServlet.java | 166 +++++++++---------
1 file changed, 84 insertions(+), 82 deletions(-)
diff --git a/ticketing-master/src/com/cn/servlet/MemberLoginServlet.java b/ticketing-master/src/com/cn/servlet/MemberLoginServlet.java
index fa0b8dd..bfa9b11 100644
--- a/ticketing-master/src/com/cn/servlet/MemberLoginServlet.java
+++ b/ticketing-master/src/com/cn/servlet/MemberLoginServlet.java
@@ -27,85 +27,87 @@ import cn.hutool.crypto.SecureUtil;
* @date: 2019年9月19日 下午10:58:30
*/
public class MemberLoginServlet extends HttpServlet {
- private static final long serialVersionUID = 1L;
-
-
- protected void doPost(HttpServletRequest request, HttpServletResponse response)
- throws ServletException, IOException {
- String userName = request.getParameter("userName");
- String passWord = request.getParameter("passWord");
-
- // md5加密
- //String passWord = SecureUtil.md5(passwd);
-
-
- AdminService adminService = new AdminServiceImpl();
- Admin admin = adminService.getAdminByName(userName);
-
- // 创建Session,存储登录的用户对象
- HttpSession session = request.getSession();
- session.setMaxInactiveInterval(30 * 60);
-
- PrintWriter out = response.getWriter();
-
- // 判断是否是管理员账号
- if (admin != null) {
- if (admin.getPassword().equals(passWord)) {
-
- // 更新登录状态和登录时间
- admin.setIsUse(1);
- admin.setLoginTime(DateUtil.now());
- adminService.updateAdmin(admin);
-
- // 将登录对象存入session
- session.setAttribute("admin", admin);
-
- // 跳转到管理界面
- out.write("");
-
- } else {
-
- out.write(
- "");
-
- }
-
- } else {
- // 判断是否是会员账号
- MemberService memberService = new MemberServiceImpl();
- Member member = memberService.getMemberByName(userName);
- if (member != null) {
- // 密码正确,转到首页
- if (passWord.equals(member.getPassword())) {
-
- // 先修改数据库登录状态和登录时间
- member.setIfUse(1);
- member.setLogintimes(DateUtil.now());
- memberService.updateMember(member);
-
- // 将登录信息存入session
- /*
- * HttpSession session = request.getSession();
- * session.setMaxInactiveInterval(30 * 60);
- */
- session.setAttribute("member", member);
-
- // 跳转到首页
- out.write("");
-
- } else {
- out.write("");
- }
- } else {
- out.write("");
- }
- }
-
- out.close();
-
- }
-
-}
+ private static final long serialVersionUID = 1L;
+
+ /**
+ * 处理POST请求的方法。
+ * 当客户端发送POST请求到此Servlet时,这个方法会被调用。
+ * @param request HttpServletRequest对象,包含客户端请求信息。
+ * @param response HttpServletResponse对象,用于发送响应到客户端。
+ * @throws ServletException 可能抛出的Servlet异常。
+ * @throws IOException 可能抛出的IO异常。
+ */
+ protected void doPost(HttpServletRequest request, HttpServletResponse response)
+ throws ServletException, IOException {
+ // 从请求中获取用户名和密码参数
+ String userName = request.getParameter("userName");
+ String passWord = request.getParameter("passWord");
+
+
+ // 创建AdminService对象,用于查询管理员信息
+ AdminService adminService = new AdminServiceImpl();
+ // 根据用户名查询管理员
+ Admin admin = adminService.getAdminByName(userName);
+
+ // 创建Session对象,用于存储登录的用户信息
+ HttpSession session = request.getSession();
+ // 设置Session的超时时间为30分钟(30*60秒)
+ session.setMaxInactiveInterval(30 * 60);
+
+ // 获取PrintWriter对象,用于向客户端发送响应
+ PrintWriter out = response.getWriter();
+
+ // 判断查询到的用户是否为管理员
+ if (admin != null) {
+ // 如果密码匹配
+ if (admin.getPassword().equals(passWord)) {
+ // 更新管理员的登录状态和登录时间
+ admin.setIsUse(1);
+ admin.setLoginTime(DateUtil.now());
+ adminService.updateAdmin(admin);
+
+ // 将管理员对象存入Session
+ session.setAttribute("admin", admin);
+
+ // 使用JavaScript弹出登录成功提示,并跳转到管理界面
+ out.write("");
+ } else {
+ // 如果密码不匹配,弹出密码错误的提示,并跳转到登录页面
+ out.write("");
+ }
+ } else {
+ // 如果查询到的用户不是管理员,再查询是否为会员
+ MemberService memberService = new MemberServiceImpl();
+ Member member = memberService.getMemberByName(userName);
+ if (member != null) {
+ // 如果密码匹配
+ if (passWord.equals(member.getPassword())) {
+ // 更新会员的登录状态和登录时间
+ member.setIfUse(1);
+ member.setLogintimes(DateUtil.now());
+ memberService.updateMember(member);
+
+ // 将会员对象存入Session
+ session.setAttribute("member", member);
+
+ // 使用JavaScript弹出登录成功提示,并跳转到首页
+ out.write("");
+ } else {
+ // 如果密码不匹配,弹出密码错误的提示,并跳转到登录页面
+ out.write("");
+ }
+ } else {
+ // 如果用户既不是管理员也不是会员,弹出用户不存在的提示,并跳转到登录页面
+ out.write("");
+ }
+ }
+
+ // 关闭PrintWriter对象
+ out.close();
+ }
+}
\ No newline at end of file