源代码:
https://download.csdn.net/download/qzc70919700/19885922
一、简单数据类型
1.1、整型
页面传递的参数:
http://localhost:8080/mvc_demo03/test/t1.do?id=10
接受参数的方法:
@RequestMapping(value = "/t1.do", method = {RequestMethod.GET, RequestMethod.POST})
public String test1(Integer id) {
System.out.println("接受int类型参数:" + id);
return "index";
}
1.2、字符串类型
页面传递的参数:
http://localhost:8080/mvc_demo03/test/t2.do?str=张三
接受参数的方法:
@RequestMapping(value = "/t2.do", method = {RequestMethod.GET, RequestMethod.POST})
public String test2(String str) {
System.out.println("接受String类型参数:" + str);
return "index";
}
二、复杂数据类型
2.1、数组类型
页面传递的参数:
<form action="${pageContext.request.contextPath }/test/t3.do">
<input type="checkbox" name="ids" value="1">
<input type="checkbox" name="ids" value="2">
<input type="checkbox" name="ids" value="3">
<input type="submit" value="提交">
</form>
接受参数的方法:
@RequestMapping(value = "/t3.do", method = {RequestMethod.GET, RequestMethod.POST})
public String test3(Integer[] ids) {
System.out.println(Arrays.toString(ids));
return "index";
}
2.2、实体类型
页面传递的参数:
<form action="${pageContext.request.contextPath }/test/t4.do" method="post">
姓名:<input type="text" name="username">
年龄:<input type="text" name="age">
性别:<input type="text" name="sex">
<input type="submit" value="提交">
</form>
接收参数的方法:
public class User {
private int id;
private String username;
private int age;
private String sex;
//...省略getter和setter
}
@RequestMapping(value = "/t4.do", method = {RequestMethod.GET, RequestMethod.POST})
public String test4(User user) {
System.out.println(user.getUsername());
System.out.println(user.getAge());
System.out.println(user.getSex());
return "index";
}
2.3、包装类型
实体类
public class UserCustom {
private User user;
private List<User> userList;
private Map<String, Object> maps;
//省略getter和setter
}
页面传递的参数:
<form action="${pageContext.request.contextPath }/test/t5.do" method="post">
姓名:<input type="text" name="user.username">
年龄:<input type="text" name="user.age">
性别:<input type="text" name="user.sex">
<input type="submit" value="提交">
</form>
接受参数的方法:
@RequestMapping(value = "/t5.do", method = {RequestMethod.GET, RequestMethod.POST})
public String test5(UserCustom custom) {
User user = custom.getUser();
System.out.println(user.getUsername());
System.out.println(user.getAge());
System.out.println(user.getSex());
return "index";
}
2.4、集合类型
页面传递的参数:
<form action="${pageContext.request.contextPath }/test/t6.do" method="post">
姓名:<input type="text" name="userList[0].username">
年龄:<input type="text" name="userList[0].age">
性别:<input type="text" name="userList[0].sex">
<input type="submit" value="提交">
</form>
接受参数的方法:
@RequestMapping(value = "/t6.do", method = {RequestMethod.GET, RequestMethod.POST})
public String test6(UserCustom custom) {
List<User> list = custom.getUserList();
User user = list.get(0);
System.out.println(user.getUsername());
System.out.println(user.getAge());
System.out.println(user.getSex());
return "index";
}
2.5、Map类型
页面传递的参数:
<form action="${pageContext.request.contextPath }/test/t7.do" method="post">
姓名:<input type="text" name="maps['username']">
年龄:<input type="text" name="maps['age']">
性别:<input type="text" name="maps['sex']">
<input type="submit" value="提交">
</form>
接受参数的方法:
@RequestMapping(value = "/t7.do", method = {RequestMethod.GET, RequestMethod.POST})
public String test7(UserCustom custom) {
Map<String, Object> map = custom.getMaps();
System.out.println(map.get("username"));
System.out.println(map.get("age"));
System.out.println(map.get("sex"));
return "index";
}