- 普通?带值
- 普通?带值 自动封装到Bean
- 封装Bean 中 Bean
- list数据封装
- map数据封装
- 多选数据封装
-
@RequestParam 参数绑定 required 是否可以没有此属性 defaultValue 设定默认值
-
@ModelAttribute 只要我在,请求进入本类的任何方法上之前,先运行我
package com.qy.controller;
import com.qy.bean.Book;
import com.qy.bean.Book2;
import com.qy.bean.Book3;
import com.qy.bean.Person;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import java.util.List;
/**
* controller接受用户传输的各种形式的数据
*/
@Controller
public class DataController {
/**
* http://localhost:8080/demo2001?name=1&password=2
*/
@RequestMapping("demo2001")
public String demo2001(String name,String password){
System.out.println("----demo2001----");
System.out.println(" name = "+name);
System.out.println(" password = "+password);
return null ;
}
@RequestMapping("demo2002")
public String demo2002(Person person){
System.out.println(person);
return null ;
}
/**
<form action="${pageContext.request.contextPath}/demo2003" method="get">
name:<input type="text" name="name"><br>
price:<input type="text" name="price"><br>
p name: <input type="text" name="person.name"><br>
p password: <input type="text" name="person.password"><br>
<input type="submit" value="提交"><br>
</form>
*/
@RequestMapping("demo2003")
public String demo2003(Book book) {
System.out.println(" demo2003 = " + book);
System.out.println(book.getPerson());
return null;
}
/**
List集合类型数据封装:
<form action="${pageContext.request.contextPath}/demo2004" method="get">
no 1 object name :<input type="text" name="listPerson[0].name"><br>
no 1 object password : <input type="text" name="listPerson[0].password"><br>
<h1>------------------------------</h1>
no 2 object name :<input type="text" name="listPerson[1].name"><br>
no 2 object password : <input type="text" name="listPerson[1].password"><br>
<input type="submit" value="提交"><br>
</form>
*/
@RequestMapping("demo2004")
public String demo2004(Book2 book2) {
System.out.println(" demo2004 = " + book2.getListPerson());
return null;
}
/**
Map集合类型数据封装:
<form action="${pageContext.request.contextPath}/demo2005" method="get">
no 1 object name :<input type="text" name="personMap[p1].name"><br>
no 1 object password : <input type="text" name="personMap[p1].password"><br>
<h1>------------------------------</h1>
no 2 object name :<input type="text" name="personMap[p2].name"><br>
no 2 object password : <input type="text" name="personMap[p2].password"><br>
<input type="submit" value="提交"><br>
</form>
*/
@RequestMapping("demo2005")
public String demo2005(Book3 book3) {
System.out.println(" demo2005 = " + book3.getPersonMap());
return null;
}
/** http://localhost:8080/demo2006?name=1&id=
* @RequestParam 参数绑定
* required 是否可以没有此属性
* defaultValue 设定默认值
*/
@RequestMapping("demo2006")
public String demo2006(@RequestParam(required = true, defaultValue = "99") Integer id, String name) {
System.out.println(" demo2006 " + id);
return null;
}
/**
封装 集合(多选)数据 radio
<form action="${pageContext.request.contextPath}/demo2007" method="get">
<input type="checkbox" value="15" name="id" />阅读
<input type="checkbox" value="20" name="id" />上网
<input type="checkbox" value="73" name="id" />电游
<button>提交</button>
</form>
*/
@RequestMapping("demo2007")
public String demo2007(@RequestParam("id") List<Integer> hobbyids) {
System.out.println(" demo2007 "+ hobbyids);
return null;
}
/**
* @ModelAttribute 只要我在,请求进入本类的任何方法上之前,先运行我
*/
@ModelAttribute
public String show(){
System.out.println("痴痴的想了很久,爱上你的理由,伤心的泪");
return null;
}
}