@RequestMapper标签
Value:指定映射信息
Method:指定来指定请求方式method=RequestMethod.GET为get请求,
method=RequestMethod.POST为post请求
params: 可以使用params和headers来更加精确的映射请求,params和headers支持简单的表达式, 比如params={"username","age!=10"}表示请求连接中必须包含username参数,且age参数不能等于10,如
http://localhost:8080/springMVC_1/springmvc/paramsAndHeadersTest?username=zs&age=11
headers: 可以使用params和headers来更加精确的映射请求,params和headers支持简单的表达式,比如headers={"Accept-Language=zh-CN,zh;q=0.8"},表示网页的请求头中Accept-Language属性的值必须为zh-CN,zh;q=0.8
代码示例
@RequestMapping("/springmvc")
@Controller
public class SpringMVCTest {
public static String SUCCESS = "success";
/**
* 1、@RequestMapping除了修饰方法,还可以修饰类
* 2、类定义处:提供初步的请求映射信息,性对于web应用的根目录
* 方法处:提供进一步的细分映射信息
* 相对于类定义处的URL,若类定义处未标注@RequestMapping,这则方法出标记的URL相对于
* web应用的根目录
* @return
*/
@RequestMapping("/requestMappingTest")
public String requestMappingTest(){
System.out.println("requestMappingTest");
return SUCCESS;
}
}
Jsp代码
<body>
<a href="springmvc/requestMappingTest">requestMappingTest</a>
</body
@PathVariable标签
可以来映射URL中的占位符到目标方法中的参数中
代码示例
@RequestMapping("/springmvc")
@Controller
public class SpringMVCTest {
public static String SUCCESS = "success";
/**
* @PathVariable 可以来映射URL中的占位符到目标方法中的参数中
* @param id
* @return
*/
@RequestMapping("/pathVariableTest/{id}")
public String pathVariableTest(@PathVariable("id") Integer id){
System.out.println("pathVariableTest"+id);
return SUCCESS;
}
}
Jsp代码
<a href="springmvc/pathVariableTest/1">pathVariableTest</a>
运行结果:
@RequestParam
@RequestParam 用来映射请求参数
value:value的值为请求参数的参数名
required:该参数是否必须,默认为true
defaultValue:该请求参数的默认值
代码示例
@RequestMapping("/springmvc")
@Controller
public class SpringMVCTest {
public static String SUCCESS = "success";
/**
* @RequestParam 用来映射请求参数
* value:value的值为请求参数的参数名
* required:该参数是否必须,默认为true
* defaultValue:该请求参数的默认值
* @param username
* @param age
* @return
*/
@RequestMapping("/requestParamTest")
public String requestParamTest(@RequestParam(value="username")
String username,@RequestParam(value="age",required=false) Integer age){
System.out.println("requestParamTest,username:"+username+
",age:"+age);
return SUCCESS;
}
}
Jsp代码
<a href="springmvc/requestParamTest?username=zs&age=20">requestParamTest</a>
@RequestHeader
@RequestHeader 用法同 @RequestParam
用来映射请求头信息
代码示例
@RequestMapping("/springmvc")
@Controller
public class SpringMVCTest {
public static String SUCCESS = "success";
/**
* @RequestHeader 用法同 @RequestParam
* 用来映射请求头信息
* @param al
* @return
*/
@RequestMapping("/requestHeaderTest")
public String requestHeaderTest(@RequestHeader(value="Accept-Language")
String al){
System.out.println("requestHeader,al:"+al);
return SUCCESS;
}
}
Jsp代码
<a href="springmvc/requestHeaderTest">requestHeaderTest</a>
@CookieValue
@CookieValue 映射一个cookie值用法同 @RequestParam
代码示例
@RequestMapping("/springmvc")
@Controller
public class SpringMVCTest {
public static String SUCCESS = "success";
/**
* @CookieValue 映射一个cookie值用法同 @RequestParam
* @param jsessionId
* @return
*/
@RequestMapping("/cookieValueTest")
public String cookieValueTest(@CookieValue(value="JSESSIONID")
String jsessionId){
System.out.println("cookieValueTest,jsessionId:"+jsessionId);
return SUCCESS;
}
}
Jsp代码
<a href="springmvc/cookieValueTest">cookieValueTest</a>