archieve: test mvc

This commit is contained in:
2025-04-30 11:29:01 +08:00
parent 8c3070f04f
commit 347de0c1c9
5 changed files with 312 additions and 2 deletions
@@ -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<String, String> errors = new HashMap<String, String>();
private String name; // define username
@@ -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();
}
}
}
+47
View File
@@ -0,0 +1,47 @@
<%@ page language="java" pageEncoding="UTF-8"
import="com.msksbr.test.mvc.JavaBean.UserBean" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01
Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>login successfully</title>
<style type="text/css">
#main {
width: 500px;
height: auto;
}
#main div {
width: 200px;
height: auto;
}
ul {
padding-top: 1px;
padding-left: 1px;
list-style: none;
}
</style>
</head>
<body>
<%
if (session.getAttribute("userBean") == null) {
%>
<jsp:forward page="register.jsp"/>
<%
return;
}
%>
<div id="main">
<div id="welcome">恭喜你,登录成功</div>
<hr/>
<div>您的信息</div>
<div>
<ul>
<li>您的姓名:${userBean.name }</li>
<li>您的邮箱:${userBean.email }</li>
</ul>
</div>
</div>
</body>
</html>
+91
View File
@@ -0,0 +1,91 @@
<%@ page language="java" pageEncoding="UTF-8" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01
Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>用户注册</title>
<style type="text/css">
h3 {
margin-left: 100px;
}
#outer {
width: 750px;
}
span {
color: #ff0000
}
div {
height: 20px;
margin-bottom: 10px;
}
.ch {
width: 80px;
text-align: right;
float: left;
}
.ip {
width: 500px;
float: left
}
.ip > input {
margin-right: 20px
}
#bt {
margin-left: 50px;
}
#bt > input {
margin-right: 30px;
}
</style>
</head>
<body>
<form action="${pageContext.request.contextPath}/ControllerServlet" method="post">
<h3>用户注册</h3>
<div id="outer">
<div>
<div class="ch">姓名:</div>
<div class="ip">
<input type="text" name="name" value="${formBean.name }"/>
<input type="text" name="name" value="${formBean.name }"/>
<span>${formBean.errors.name}${DBMes}</span>
</div>
</div>
<div>
<div class="ch">密码:</div>
<div class="ip">
<input type="text" name="password">
<input type="text" name="password">
<span>${formBean.errors.password}</span>
</div>
</div>
<div>
<div class="ch">确认密码:</div>
<div class="ip">
<input type="text" name="password2">
<span>${formBean.errors.password2}</span>
</div>
</div>
<div>
<div class="ch">邮箱:</div>
<div class="ip">
<input type="text" name="email" value="${formBean.email }">
<span>${formBean.errors.email}</span>
</div>
</div>
<div id="bt">
<input type="reset" value="重置 "/>
<input type="submit" value="注册"/>
</div>
</div>
</form>
</body>
</html>
</html>