RequesMapping注解
作用案例介绍
源码内容源码介绍path和valueRequestMethodparamsheaders
作用
用于建立请求RUL和处理请求方法之间的对应关系
使用案例
1
@Controller
public class HelloController {
@RequestMapping(path
= "/hello")
public String
sayHello(){
System
.out
.println("Hello StringMVC");
return "success";
}
}
案例介绍
当类名也有对应的RequestMapping时,请求需要添加一层路径。
@RequestMapping(path
= "/user")
public class HelloController {
@RequestMapping(path
= "/hello")
public String
sayHello(){
System
.out
.println("Hello StringMVC");
return "success";
}
源码
内容
@Target({ElementType
.TYPE
, ElementType
.METHOD
})
@Retention(RetentionPolicy
.RUNTIME
)
@Documented
@Mapping
public @
interface RequestMapping {
String
name() default "";
@AliasFor("path")
String
[] value() default {};
@AliasFor("value")
String
[] path() default {};
RequestMethod
[] method() default {};
String
[] params() default {};
String
[] headers() default {};
String
[] consumes() default {};
String
[] produces() default {};
源码介绍
path和value
path和value的使用方法相同,表示访问文件的路径,使用时只需更替注解文字即可,注解内容同使用案例1 ,如:
@RequestMapping(path
= "/hello")
和
@RequestMapping(value
= "/hello")
RequestMethod
RequestMethod的源码: RequestMethod方法,规定了匹配的网络请求方式,RequestMapping默认的请求方式为get请求,而html中的超链接href,对应的请求为get请求,当更改RequestMapping的请求为POST后,网页请求将报错
params
请求时需要携带的参数
@Controller
@RequestMapping(path
= "/user")
public class HelloController {
@RequestMapping(path
= "/hello",params
= {"username"})
public String
sayHello(){
System
.out
.println("Hello StringMVC");
return "success";
}
}
headers
发送的请求中必须包含的请求头,在一些项目中,用来存放代表账户唯一性的UID来验证账户。