From 347de0c1c9f8dcea2492d3f54c8c978951bc04aa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BE=A1=E5=9D=82=E6=98=B4?= Date: Wed, 30 Apr 2025 11:29:01 +0800 Subject: [PATCH] archieve: test mvc --- test/mvc/.idea/uiDesigner.xml | 124 ++++++++++++++++++ ...terFromBean.java => RegisterFormBean.java} | 2 +- .../test/mvc/Servlet/ControllerServlet.java | 50 ++++++- test/mvc/src/main/webapp/loginSuccess.jsp | 47 +++++++ test/mvc/src/main/webapp/register.jsp | 91 +++++++++++++ 5 files changed, 312 insertions(+), 2 deletions(-) create mode 100644 test/mvc/.idea/uiDesigner.xml rename test/mvc/src/main/java/com/msksbr/test/mvc/JavaBean/{RegisterFromBean.java => RegisterFormBean.java} (98%) create mode 100644 test/mvc/src/main/webapp/loginSuccess.jsp create mode 100644 test/mvc/src/main/webapp/register.jsp diff --git a/test/mvc/.idea/uiDesigner.xml b/test/mvc/.idea/uiDesigner.xml new file mode 100644 index 0000000..2b63946 --- /dev/null +++ b/test/mvc/.idea/uiDesigner.xml @@ -0,0 +1,124 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/test/mvc/src/main/java/com/msksbr/test/mvc/JavaBean/RegisterFromBean.java b/test/mvc/src/main/java/com/msksbr/test/mvc/JavaBean/RegisterFormBean.java similarity index 98% rename from test/mvc/src/main/java/com/msksbr/test/mvc/JavaBean/RegisterFromBean.java rename to test/mvc/src/main/java/com/msksbr/test/mvc/JavaBean/RegisterFormBean.java index 2399626..ffd43a9 100644 --- a/test/mvc/src/main/java/com/msksbr/test/mvc/JavaBean/RegisterFromBean.java +++ b/test/mvc/src/main/java/com/msksbr/test/mvc/JavaBean/RegisterFormBean.java @@ -3,7 +3,7 @@ package com.msksbr.test.mvc.JavaBean; import java.util.HashMap; import java.util.Map; -public class RegisterFromBean { +public class RegisterFormBean { // error message private final Map errors = new HashMap(); private String name; // define username diff --git a/test/mvc/src/main/java/com/msksbr/test/mvc/Servlet/ControllerServlet.java b/test/mvc/src/main/java/com/msksbr/test/mvc/Servlet/ControllerServlet.java index 91223fd..9f5a27d 100644 --- a/test/mvc/src/main/java/com/msksbr/test/mvc/Servlet/ControllerServlet.java +++ b/test/mvc/src/main/java/com/msksbr/test/mvc/Servlet/ControllerServlet.java @@ -1,4 +1,52 @@ package com.msksbr.test.mvc.Servlet; -public class ControllerServlet { +import com.msksbr.test.mvc.JavaBean.RegisterFormBean; +import com.msksbr.test.mvc.JavaBean.UserBean; +import com.msksbr.test.mvc.Util.DBUtil; +import jakarta.servlet.annotation.WebServlet; +import jakarta.servlet.http.HttpServlet; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; + +@WebServlet(name = "ControllerServlet", value = "/ControllerServlet") +public class ControllerServlet extends HttpServlet { + public void doGet(HttpServletRequest request, HttpServletResponse response) { + this.doPost(request, response); + } + + public void doPost(HttpServletRequest request, HttpServletResponse response) { + response.setContentType("text/html;charset=UTF-8"); + response.setCharacterEncoding("UTF-8"); + try { + String name = request.getParameter("name"); + String password = request.getParameter("password"); + String password2 = request.getParameter("password2"); + String email = request.getParameter("email"); + RegisterFormBean formBean = new RegisterFormBean(); + formBean.setName(name); + formBean.setPassword(password); + formBean.setPassword2(password2); + formBean.setEmail(email); + if (!formBean.validate()) { + request.setAttribute("formBean", formBean); + request.getRequestDispatcher("/register.jsp").forward(request, response); + return; + } + UserBean userBean = new UserBean(); + userBean.setName(name); + userBean.setPassword(password); + userBean.setEmail(email); + boolean b = DBUtil.getInstance().insertUser(userBean); + if (!b) { + request.setAttribute("DBMes", "你注册的用户已存在"); + request.getRequestDispatcher("/register.jsp").forward(request, response); + return; + } + response.getWriter().print("恭喜你注册成功,3秒钟后自动跳转"); + request.getSession().setAttribute("userBean", userBean); + response.setHeader("refresh", "3;url=loginSuccess.jsp"); + } catch (Exception e) { + e.printStackTrace(); + } + } } diff --git a/test/mvc/src/main/webapp/loginSuccess.jsp b/test/mvc/src/main/webapp/loginSuccess.jsp new file mode 100644 index 0000000..b38e926 --- /dev/null +++ b/test/mvc/src/main/webapp/loginSuccess.jsp @@ -0,0 +1,47 @@ +<%@ page language="java" pageEncoding="UTF-8" + import="com.msksbr.test.mvc.JavaBean.UserBean" %> + + + + login successfully + + + +<% + if (session.getAttribute("userBean") == null) { +%> + +<% + return; + } +%> +
+
恭喜你,登录成功
+
+
您的信息
+
+
    +
  • 您的姓名:${userBean.name }
  • +
  • 您的邮箱:${userBean.email }
  • +
+
+
+ + \ No newline at end of file diff --git a/test/mvc/src/main/webapp/register.jsp b/test/mvc/src/main/webapp/register.jsp new file mode 100644 index 0000000..117f3dc --- /dev/null +++ b/test/mvc/src/main/webapp/register.jsp @@ -0,0 +1,91 @@ +<%@ page language="java" pageEncoding="UTF-8" %> + + + + 用户注册 + + + +
+

用户注册

+
+
+
姓名:
+
+ + + ${formBean.errors.name}${DBMes} +
+
+
+
密码:
+
+ + + ${formBean.errors.password} +
+
+
+
确认密码:
+
+ + ${formBean.errors.password2} +
+
+
+
邮箱:
+
+ + ${formBean.errors.email} +
+
+
+ + +
+
+
+ + + \ No newline at end of file