这里示例包括参数封装有:int类型,String类型,对象类型,包装类型,数组类型,list集合类型,map集合类型。
1.创建实体类User
package com.zit.entity;
import java.util.Date;
public class User {
private int id;
private String username;
private String age;
private String phone;
private String address;
private Date birthday;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getAge() {
return age;
}
public void setAge(String age) {
this.age = age;
}
public String getPhone() {
return phone;
}
public void setPhone(String phone) {
this.phone = phone;
}
public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
}
public Date getBirthday() {
return birthday;
}
public void setBirthday(Date birthday) {
this.birthday = birthday;
}
}
2.创建包装类
package com.zit.entity;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
public class WrapObject {
private User user;
private List<User> userList;
private Map<String, String> map = new HashMap<String, String>();
public User getUser() {
return user;
}
public void setUser(User user) {
this.user = user;
}
public List<User> getUserList() {
return userList;
}
public void setUserList(List<User> userList) {
this.userList = userList;
}
public Map<String, String> getMap() {
return map;
}
public void setMap(Map<String, String> map) {
this.map = map;
}
}
3.编写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>Insert title here</title>
</head>
<body>
<!-- 对象封装 -->
<form action="${pageContext.request.contextPath}/login.do" method="post">
姓名:<input type="text" name="username">
年龄:<input type="text" name="age">
手机:<input type="text" name="phone">
地址:<input type="text" name="address">
生日:<input type="text" name="birthday">
<input type="submit" value="提交">
</form>
<hr >
<!-- 封装基本数据类型 int -->
<form action="${pageContext.request.contextPath}/intParam.do" method="post">
id:<input type="text" name="id">
<input type="submit" value="提交">
</form>
<hr >
<!-- 封装基本数据类型 String -->
<form action="${pageContext.request.contextPath}/strParam.do" method="post">
姓名:<input type="text" name="username">
<input type="submit" value="提交">
</form>
<hr >
<!-- 封装包装类型 -->
<form action="${pageContext.request.contextPath}/strParam.do" method="post">
姓名:<input type="text" name="username">
年龄:<input type="text" name="age">
<input type="submit" value="提交">
</form>
<hr >
<!-- 封装数组 -->
<form action="${pageContext.request.contextPath}/arrParam.do" method="post">
姓名:<input type="checkbox" name="arr" value="1">
年龄:<input type="checkbox" name="arr" value="2">
<input type="submit" value="提交">
</form>
<hr >
<!-- 封装list集合 -->
<form action="${pageContext.request.contextPath}/listParam.do" method="post">
姓名:<input type="text" name="userList[0].username">
年龄:<input type="text" name="userList[0].age" >
姓名:<input type="text" name="userList[1].username">
年龄:<input type="text" name="userList[1].age" >
<input type="submit" value="提交">
</form>
<hr >
<!-- 封装包装类 -->
<form action="${pageContext.request.contextPath}/wrapParam.do" method="post">
姓名:<input type="text" name="user.username">
年龄:<input type="text" name="user.age" >
<input type="submit" value="提交">
</form>
<hr >
<!-- 封装map集合 -->
<form action="${pageContext.request.contextPath}/mapParam.do" method="post">
姓名:<input type="text" name="map['username']">
年龄:<input type="text" name="map['age']" >
<input type="submit" value="提交">
</form>
<hr >
</body>
</html>
4.创建执行类
package com.zit.controller;
import java.util.List;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import com.zit.entity.User;
import com.zit.entity.WrapObject;
@Controller
public class UserController {
/**
* 封装基本数据类型参数
* @param id
* @return
*/
@RequestMapping("intParam")
public String intParam(int id){
System.out.println(id);
return "success";
}
/**
* 封装String类型参数
* @param username
* @return
*/
@RequestMapping("strParam")
public String strParam(String username){
System.out.println(username);
return "success";
}
/**
* 封装对象
* @param user
* @return
*/
@RequestMapping("login")
public String strParam(User user){
System.out.println(user.getAddress());
return "success";
}
/**
* 封装数组
* @param user
* @return
*/
@RequestMapping("arrParam")
public String arrParam(String[] arr){
System.out.println(arr.length);
return "success";
}
/**
* 封装list集合
* @param obj
* @return
*/
@RequestMapping("listParam")
public String arrParam(WrapObject obj){
System.out.println(obj.getUserList().size());
return "success";
}
/**
* 封装包装类
* @param obj
* @return
*/
@RequestMapping("wrapParam")
public String wrapParam(WrapObject obj){
System.out.println(obj.getUser().getAge());
return "success";
}
/**
* 封装map集合
* @param obj
* @return
*/
@RequestMapping("mapParam")
public String mapParam(WrapObject obj){
System.out.println(obj.getMap().get("username"));
return "success";
}
}