@RequestParam:获取请求参数
作用:将请求参数处理后赋值给方法的参数
之前想获取请求参数:request.getParameter(“name”)
现在想获取请求参数:使用@RequestParam注解。
@RequestParam("name")
相当于username=request.getParameter("name")
<a href="handle01?name=tomcat">handle。。。。</a>
@Controller
public class HelloController {
@RequestMapping("/handle01")
//username=request.getParameter("name")
public String test1(@RequestParam("name") String username){
System.out.println("这个变量是"+username);
return "success";
}
}
对@RequestParam的属性的说明:
这个注解有三个属性:
1.value:指明请求参数的key
2.required:这个请求参数是否是必须的(加了注解后,默认必须带请求参数)
3.defaultValue:指定没带请求参数时的默认值
<a href="handle01?">handle。。。。</a>
@Controller
public class HelloController {
@RequestMapping("/handle01")
public String test1( @RequestParam(value = "name",required = false,defaultValue = "没带参数") String username){
System.out.println("这个变量是"+username);
return "success";
}
}
@RequestHeader:获取请求头
之前想要获取请求头:request.getHeader(“请求头”)
现在想要获取请求头:使用@RequestHeader注解
上面是发送一个请求的所有请求的请求头,如果想要获取User-Agent的请求头:
@RequestHeader("User-Agent")
相当于userAgent=request.getHeader("User-Agent")
<a href="handle02">handle。。。。</a>
@Controller
public class HelloController {
@RequestMapping("/handle02")
//相当于userAgent=request.getHeader("User-Agent")
public String test2(@RequestHeader("User-Agent") String userAgent){
System.out.println(userAgent);
return "success";
}
}
对@RequestHeander的属性的说明:
这个注解有三个属性:
1.value:指明请求头
2.required:这个请求头是否是必须的
3.defaultValue:指定没带请求参数时的默认值
@CookieValue:获取Cookie
以前想要获取Cookie:
Cookie[] cookies = request.getCookies();
for(Cookie cookie:cookies){
if(c.getName().equals("JSESSIONID")){
String c = cookie.getValue();
}
}
现在想要获取Cookie,同样使用注解就可以了:
<a href="handle03">handle。。。。</a>
@Controller
public class HelloController {
@RequestMapping("/handle03")
public String test3(@CookieValue("JSESSIONID")String jsessionId){
System.out.println(jsessionId);
return "success";
}
}