前端:

<!--用table布局、 label的inline-block 对齐input-->
<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.thymeleaf.org">
<head>
<meta charset="UTF-8" />
<title>Title</title>
</head>
<body>
<div class="web_login">
<ul>
<ul>
<!--accept-charset 属性规定服务器处理表单数据所接受的字符集.此属性的默认值是
"unknown",表示表单的字符集与包含表单的文档的字符集相同-->
<form name="form2" accept-charset="utf-8" action="/security/addregister" method="post">
<!--用table对齐-->
<table >
<tr>
<td>用户名:</td>
<td><input type="text" name="username" maxlength="16"/></td>
</tr>
<tr>
<td>密码:</td>
<td><input type="password" name="password1" maxlength="16" /></td>
</tr>
<tr>
<td>确认密码:</td>
<td><input type="password" name="password2" maxlength="16" /></td>
</tr>
</table>

<div class="inputArea">
<a th:href="@{/security/readdoc}" target="_blank">阅读注册协议</a>
<input type="submit" value="同意协议并注册"/>
</div>
</form>
</ul>
</ul>
</div>
</body>
</html>


 

后端:



@RequestMapping("/addregister")
public String register(HttpServletRequest request){
String username = request.getParameter("username");
String password1 = request.getParameter("password1");
String password2 = request.getParameter("password2");
if (password1.equals(password2))
{
User1 user = new User1();
user.setUserName(username);
user.setUserPwd(password1);
userService.addUser(user);
return "login";
}
else
{
return "register";
}
}


 

二、form提交: 



<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.thymeleaf.org">
<head>
<meta charset="UTF-8">
<title>课程管理系统登录页面</title>
<link rel="stylesheet" type="text/css" th:href="@{/css/style.css}" />
<script type="text/javascript" th:src="@{/js/jquery-3.1.1.min.js}"></script>
</head>
<body>
<div>
<div id="wrapper" style="text-align:center">
<img id="login" width="100" height="20" th:src="@{/pics/logo.png}" />
<div id="f_title">课程管理系统用户登录</div>
<!--${user}取后台转递的map参数,其中有个key是user-->
<form th:action="@{/security/login}" method="post" th:object="${user}">
<div class="f_row">
<span>用户姓名:</span>
<input type="text" class="form-control" name="userName" th:value="*{userName}" placeholder="请输入姓名">
</div>
<div class="f_row">
<span>登录密码:</span>
<input type="text" class="form-control" name="userPwd" th:value="*{userPwd}" placeholder="请输入密码">
</div>
<br>
<div class="f_row">
<input type="submit" value=" 登 录 "></input>
</div>
</form>
</div>
</div>
<div id="footer">
<div th:insert="footer :: copy"></div>
<div th:insert="footer :: time"></div>
</div>
</body>
</html>


前端向后端传递数据_css

 

 登录,执行到控制器:/security/login



@PostMapping(value="/login")
public String login( User1 user,Map<String, Object> map ) {
String userName=user.getUserName();
String userPwd=user.getUserPwd();
List<User1> lus=userService.loadUserByUserName(userName);
if(lus!=null){
User1 user1=lus.get(0);
if(user1.getUserPwd().equals(userPwd))
{
map.put("user",user1);
return "main";
}
}
return "login";
}


两个参数都收到数据??

user的值:

前端向后端传递数据_css_02

 

 

map的值:

前端向后端传递数据_css_03

 

如果将参数改为:

前端向后端传递数据_html_04

 

则map收不到数据。