From f507def213a95e59b988241fa3b400d2e22eca24 Mon Sep 17 00:00:00 2001 From: liyansheng <1761724207@qq.com> Date: Fri, 20 Dec 2024 23:41:14 +0800 Subject: [PATCH] =?UTF-8?q?fix<=E7=99=BB=E5=BD=95=E6=B5=81=E7=A8=8B>?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/example/controller/LoginServlet.java | 42 +++++++++++++++++++ src/main/java/example/dao/UserDao.java | 6 +++ .../java/example/service/IUserService.java | 5 +++ .../example/service/impl/UserServiceImpl.java | 15 +++++++ src/main/webapp/login.jsp | 21 ++++++++++ src/main/webapp/msg.jsp | 16 +++++++ 6 files changed, 105 insertions(+) create mode 100644 src/main/java/example/controller/LoginServlet.java create mode 100644 src/main/java/example/service/IUserService.java create mode 100644 src/main/java/example/service/impl/UserServiceImpl.java create mode 100644 src/main/webapp/login.jsp create mode 100644 src/main/webapp/msg.jsp diff --git a/src/main/java/example/controller/LoginServlet.java b/src/main/java/example/controller/LoginServlet.java new file mode 100644 index 0000000..4062ecc --- /dev/null +++ b/src/main/java/example/controller/LoginServlet.java @@ -0,0 +1,42 @@ +package example.controller; + +import example.service.IUserService; +import example.service.impl.UserServiceImpl; + +import javax.servlet.ServletException; +import javax.servlet.annotation.WebServlet; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import java.io.IOException; + +@WebServlet("/login") +public class LoginServlet extends HttpServlet { + + IUserService userService = new UserServiceImpl(); + + @Override + protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { + resp.setContentType("text/html;charset=utf-8"); + req.setCharacterEncoding("utf-8"); + String username = req.getParameter("username"); + String password = req.getParameter("password"); + try { + boolean login = userService.login(username, password); + if(login){ + req.getSession().setAttribute("username",username); + resp.sendRedirect("/index.jsp"); + }else{ + req.getSession().setAttribute("msg","用户名或密码错误"); + resp.sendRedirect("/msg.jsp"); + } + } catch (Exception e) { + throw new RuntimeException(e); + } + } + + @Override + protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { + resp.sendRedirect("/login.jsp"); + } +} diff --git a/src/main/java/example/dao/UserDao.java b/src/main/java/example/dao/UserDao.java index 11c7cfc..eeabbad 100644 --- a/src/main/java/example/dao/UserDao.java +++ b/src/main/java/example/dao/UserDao.java @@ -21,6 +21,11 @@ public class UserDao { return queryRunner.query(sql, new BeanHandler<>(User.class), id); } + public User getUserByUsername(String username) throws Exception { + String sql = "SELECT * FROM user WHERE username = ?"; + return queryRunner.query(sql, new BeanHandler<>(User.class), username); + } + public List getAllUser() throws Exception { String sql = "SELECT * FROM user"; return queryRunner.query(sql, new BeanListHandler<>(User.class)); @@ -40,4 +45,5 @@ public class UserDao { UserDao userDao = new UserDao(); System.out.println(userDao.getUserById(1).getUsername()); } + } diff --git a/src/main/java/example/service/IUserService.java b/src/main/java/example/service/IUserService.java new file mode 100644 index 0000000..f3f0ba9 --- /dev/null +++ b/src/main/java/example/service/IUserService.java @@ -0,0 +1,5 @@ +package example.service; + +public interface IUserService { + boolean login(String username, String password) throws Exception; +} diff --git a/src/main/java/example/service/impl/UserServiceImpl.java b/src/main/java/example/service/impl/UserServiceImpl.java new file mode 100644 index 0000000..3fa872c --- /dev/null +++ b/src/main/java/example/service/impl/UserServiceImpl.java @@ -0,0 +1,15 @@ +package example.service.impl; + +import example.dao.UserDao; +import example.model.User; +import example.service.IUserService; + +public class UserServiceImpl implements IUserService { + UserDao userDao=new UserDao(); + + @Override + public boolean login(String username, String password) throws Exception { + User user = userDao.getUserByUsername(username); + return user != null && user.getPassword().equals(password); + } +} diff --git a/src/main/webapp/login.jsp b/src/main/webapp/login.jsp new file mode 100644 index 0000000..d8b5511 --- /dev/null +++ b/src/main/webapp/login.jsp @@ -0,0 +1,21 @@ +<%@ page contentType="text/html;charset=UTF-8" language="java" %> + + + + + + + + +

-电脑商城-用户登录

+
+ +

+ +

+ +
+
+ + + \ No newline at end of file diff --git a/src/main/webapp/msg.jsp b/src/main/webapp/msg.jsp new file mode 100644 index 0000000..ec75a9a --- /dev/null +++ b/src/main/webapp/msg.jsp @@ -0,0 +1,16 @@ +<%@ page contentType="text/html;charset=UTF-8" language="java" %> + + + + + + + + +

提示:

+

${sessionScope.msg}

+ + + + + \ No newline at end of file