参考:https://blog.csdn.net/write6/article/details/79147925
工程界面
web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://java.sun.com/xml/ns/javaee"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
id="WebApp_ID" version="2.5">
<!-- 配置DispatchcerServlet -->
<servlet>
<servlet-name>springDispatcherServlet</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<!-- 配置Spring mvc下的配置文件的位置和名称 -->
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/springmvc.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>springDispatcherServlet</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
<filter>
<filter-name>EncodingFilter</filter-name> <!--编码过滤器-->
<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>utf-8</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>EncodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.css</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.gif</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.png</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.js</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.html</url-pattern>
</servlet-mapping>
</web-app>
springmvc.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:mvc="http://www.springframework.org/schema/mvc"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.0.xsd
http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-4.0.xsd">
<!-- 配置自定扫描的包 -->
<context:component-scan base-package="com.zjq"></context:component-scan>
<!-- 配置视图解析器: 如何把 handler 方法返回值解析为实际的物理视图 -->
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/WEB-INF/views/"></property>
<property name="suffix" value=".jsp"></property>
</bean>
</beans>
index.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>首页</title>
</head>
<body>
<div style="position;absolute;left:200px;top:100px">
<a href="${pageContext.request.contextPath}/user/showRegUser" >用户注册</a><br/>
<a href="${pageContext.request.contextPath}/user/showLogin" >用户登录</a>
</div>
</body>
</html>
login.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>登录界面</title>
</head>
<body>
<h3>用户登录</h3><br>
<form method="post" action="${pageContext.request.contextPath}/user/validateUser">
<table>
<tr>
<td><label>登录名:</label></td>
<td><input type="text" name="userName"></td>
</tr>
<tr>
<td><label>密码:</label></td>
<td><input type="password" name="password"></td>
</tr>
<tr>
<td><input type="submit" value="登录"></td>
</tr>
</table>
</form>
</body>
</html>
regUser.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>用户注册</title>
</head>
<body>
<h3>用户注册</h3><br>
<form method="post" action="${pageContext.request.contextPath}/user/addUser">
<table>
<tr>
<td><label>登录名:</label></td>
<td><input type="text" name="userName"></td>
</tr>
<tr>
<td><label>密码:</label></td>
<td><input type="password" name="password"></td>
</tr>
<tr>
<td><label>真实姓名:</label></td>
<td><input type="text" name="fullName"></td>
</tr>
<tr>
<td><input type="submit" value="注册"></td>
</tr>
</table>
</form>
</body>
</html>
welcome.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>登录成功</title>
</head>
<body>
${requestScope.user.userName}登录成功
</body>
</html>
User.java
package com.zjq.pojo;
public class User {
private String userName;
private String password;
private String fullName;
public User(String userName, String password, String fullName) {
super();
this.userName = userName;
this.password = password;
this.fullName = fullName;
}
public User() {
super();
// TODO Auto-generated constructor stub
}
public String getUserName() {
return userName;
}
public void setUserName(String userName) {
this.userName = userName;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public String getFullName() {
return fullName;
}
public void setFullName(String fullName) {
this.fullName = fullName;
}
}
UserController.java
扫描二维码关注公众号,回复:
5400760 查看本文章
package com.zjq.controller;
import java.util.ArrayList;
import java.util.List;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import com.zjq.pojo.*;
@RequestMapping(value="/user")
@Controller
public class UserController {
private static List<User> userList;
{
userList = new ArrayList<User>();
}
/*注册界面*/
@RequestMapping(value="/showRegUser")
public String showRegUser() {
return "regUser";
}
/*新增用户*/
@RequestMapping(value="/addUser")
public String addUser(
@RequestParam("userName")String userName,
@RequestParam("password")String password,
@RequestParam("fullName")String fullName) {
User user = new User();
user.setUserName(userName);
user.setPassword(password);
user.setFullName(fullName);
userList.add(user);
return "login"; //注册成功跳转到登录界面
}
@RequestMapping(value="showLogin")
public String showLogin() { //直接跳转登录界面
return "login";
}
/*验证用户*/
@RequestMapping(value="/validateUser")
public String login(
@RequestParam("userName")String userName,
@RequestParam("password")String password,
Model model) {
//到集合中查找用户是否存在,此用户用来模拟数据库验证
for(User user:userList) {
if(user.getUserName().equals(userName)
&& user.getPassword().equals(password)) {
model.addAttribute("user", user);//页面回显数据
return "welcome";//成功跳转到欢迎界面
}
}
return "login";//验证失败,跳转到登录界面
}
}
采用数据库登录注册看:SpringMVC 实现登录注册-2,https://blog.csdn.net/qq_39757209/article/details/88087228