springMVC自带的form标签使用案例
使用自带form标签是,必须先通过model对象,传递了一个空的users对象到页面.
3、控制器类
使用自带form标签是,必须先通过model对象,传递了一个空的users对象到页面.
1、在首页index.jsp请求控制器类中提供一个方法(用来传递一个空对象到页面中)
2、登录页面 login.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@taglib uri="http://www.springframework.org/tags/form" prefix="form"%>
<%
String path = request.getContextPath();
String basepath = request.getScheme() + "://"
+ request.getServerName() + ":" + request.getServerPort()
+ path + "/";
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<base href="<%=basepath%>" />
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title></title>
</head>
<body>
<h3>login2.jsp页面</h3>
<!--
默认的提交方式为post
自动填充的提交路径就是进来之前的路径(这里就是mfc/checklogin)
users为后台已经传递过来的空对象
-->
<form:form modelAttribute="users">
用户名:<form:input path="loginName" />
<br />
密码:<form:password path="loginPwd" />
<br />
<input type="submit" value="登录" />
</form:form>
</body>
</html>
3、控制器类
@Controller
@RequestMapping("uc")
public class UserController {
@RequestMapping(value = "checklogin", method = RequestMethod.GET)
public String checkLogin(Model model) {
System.out.println("使用springMVC提交表单的前期准备,准备一个空的对象...");
model.addAttribute("users", new Users());
// 这里以类型名作为参数名(类型名首字母大写变小写)
// model.addAttribute(new Users());
return "users/login";
}
@RequestMapping(value = "checklogin", method = RequestMethod.POST)
public String checkLogin(Users users) {
System.out.println("post接收数据..");
System.out.println("loginName=" + users.getLoginName() + ",loginPwd="
+ users.getLoginPwd());
return "users/suc";
}
}
我们看到方法的名字和路径都是一致的,只是method属性不一致,我们也可以通过这个method属性来匹配不同的请求。
4、用到的实体类Users
package cn.sz.hcq.pojo;
import java.io.Serializable;
public class Users implements Serializable {
private Integer userId;
private String loginName;
private String loginPwd;
private String realName;
public Integer getUserId() {
return userId;
}
public void setUserId(Integer userId) {
this.userId = userId;
}
public String getLoginName() {
return loginName;
}
public void setLoginName(String loginName) {
this.loginName = loginName;
}
public String getLoginPwd() {
return loginPwd;
}
public void setLoginPwd(String loginPwd) {
this.loginPwd = loginPwd;
}
public String getRealName() {
return realName;
}
public void setRealName(String realName) {
this.realName = realName;
}
}