<%--RequestParam注解测试--%>
<a href="anno/testRequestParam?name=haha">RequestParam</a>
<br/>控制层
@RequestMapping("/testRequestParam")
public String testRequestParam(@RequestParam(name="name") String username){
System.out.println("执行了");
System.out.println(username);
return "success";
} <%--RequestBody注解测试--%>
<form action="anno/testRequestBody" method="post">
用户姓名:<input type="text" name="username"/><br/>
用户年龄:<input type="text" name="age"/><br/>
<input type="submit" value="提交"/><br/>
</form>
<br/> /**
* 获取到请求体的内容
* @param
* @return
*/
@RequestMapping("/testRequestBody")
public String testRequestBody(@RequestBody String body){
System.out.println("执行了");
System.out.println(body);
return "success";
} <%--PathVariable注解测试--%>
<a href="anno/testPathVariable/10">testPathVariable</a>
<br/>/**
* PathVariable注解
* 把拿到的sid赋到id上
* @return
*/
@RequestMapping("/testPathVariable/{sid}")
public String testPathVariable(@PathVariable("sid")String id){
System.out.println("执行了");
System.out.println(id);
return "success";
}
4. RequestHeader注解作用:获取指定请求头的值 属性 value:请求头的名称
<%--RequestHeader--%>
<a href="anno/testRequestHeader">testRequestHeader</a>
<br/> /**
* RequestHeader注解
* 获取请求头得值
* @param header
* @return
*/
@RequestMapping("/testRequestHeader")
public String testRequestHeader(@RequestHeader(value = "Accept") String header){
System.out.println("执行了");
System.out.println(header);
return "success";
} <%--CookieValue--%>
<a href="anno/testCookieValue">testCookieValue </a>
<br/> /**
* CookieValue注解
* @param cookieValue
* @return
*/
@RequestMapping("/testCookieValue")
public String testCookieValue(@CookieValue("JSESSIONID") String cookieValue){
System.out.println("执行了");
System.out.println(cookieValue);
return "success";
} <%--ModelAttribute注解测试--%>
<form action="anno/testModelAttribute" method="post">
用户姓名:<input type="text" name="username"/><br/>
用户年龄:<input type="text" name="age"/><br/>
<input type="submit" value="提交"/><br/>
</form>
<br/> /**
* ModelAttribute注解
* @return
*/
@RequestMapping("/testModelAttribute")
public String testModelAttribute(@ModelAttribute("abc") User user){
System.out.println("执行了");
System.out.println(user);
return "success";
}
/**
* 没有返回值情况 参数列表用@MadelAttribute注解取
* @param username
* @param map
*/
@ModelAttribute
public void showUser(String username, Map<String,User> map){
System.out.println(" showUser执行了");
//模拟查询数据库数据
User user=new User();
user.setUsername(username);
user.setAge(20);
user.setDate(new Date());
map.put("abc",user);
}
/**
* 该方法会先执行
* 有返回值情况
*/
@ModelAttribute
public User showUser(String username){
System.out.println(" showUser执行了");
//模拟查询数据库数据
User user=new User();
user.setUsername(username);
user.setAge(20);
user.setDate(new Date());
//把根据传来的username查询到的数据返回
return user;
}SessionAttributes注解 作用:用于多次执行控制器方法间的参数共享 属性 value:指定存入属性的名称
<%--SessionAttributes注解--%>
<a href="anno/testSessionAttributes">testSessionAttributes</a>
<%--取出SessionAttributes中的值--%>
<a href="anno/getSessionAttributes">getSessionAttributes</a>
<%--删除SessionAttributes中的值--%>
<a href="anno/delSessionAttributes">delSessionAttributes</a> /**
* SessionAttributes注解
* @param
* @return
*/
@RequestMapping("/testSessionAttributes")
public String testSessionAttributes(Model model){
System.out.println("执行了");
System.out.println("SessionAttributes.......");
//底层会存储到request域对象中
model.addAttribute("msg","喜洋洋");
return "success";
}
/**
* 从session域中取值
* @param modelMap
* @return
*/
@RequestMapping("/getSessionAttributes")
public String getSessionAttributes(ModelMap modelMap){
System.out.println("执行了");
System.out.println("getSessionAttributes.......");
//底层会存储到request域对象中
String msg=(String)modelMap.get("msg");
System.out.println(msg);
return "success";
}
/**
* 删掉SessionAttributes中的值
* @param modelMap
* @return
*/
@RequestMapping("/delSessionAttributes")
public String delSessionAttributes(SessionStatus status){
System.out.println("执行了");
System.out.println("delSessionAttributes.......");
status.setComplete();
//清楚session中的值 赋值完成
return "success";
}