SpringMVC中@RequestMapping注解

SpringMVC中@RequestMapping注解

功能

将浏览器发送来的请求和处理请求所对应的contorller方法关联起来。

当SpringMVC接收到浏览器发送的指定请求,即会找到通过@Request Mapping标注的对应方法,使用此方法来处理请求。

即建立一种请求和处理请求的方法的映射关系,将它们关联起来。

标注位置

  • 标注类
  • 标注方法

当标注一个类时,表示设置该类处理的映射请求的统一初始信息。即该类中方法处理的请求路径均以注解中定义的路径开始。

当标注一个方法时,表示设置该方法处理的请求的路径。

在SpringMVC识别处理请求的方法时,需要满足“类标注路径+方法标注路径”,即可成功关联。

@Controller
@RequestMapping("/index")
public class HelloController {
	
    //此方法处理的请求路径为:/index/
    @RequestMapping("/")
    public String index(){
        System.out.println("index");
        return "index";
    }
    
    //此方法处理的请求路径为:/index/success
    @RequestMapping("/success")
    public String success(){
        return "success";
    }
}

注解的value属性

@RequestMapping的value属性是一个String类型的数组,用于设置请求映射所匹配的请求路径。因为是数组故可以设置多个请求路径。

value属性是该注解必须设置的属性。

// 请求路径/one和/two均对应该方法。
@RequestMapping(
        value = {"/one", "/two"}
        )
public String testRequestMapping(){
    return "success";
}

注解的method属性

@RequestMapping的method属性是一个RequestMethod类型的数组,用于设置该方法处理的请求所需要的请求方式(get,post)。

RequestMethod是一个枚举类型,其中包含了所有的请求方式。

设置method属性后,必须以对应的请求方式请求value所设置的路径才能够匹配该方法。

可以设置多个可对应的请求方式。

@RequestMapping(
        value = {"/one", "two"},
        method = {RequestMethod.POST}
        )
public String testRequestMapping(){
    return "success";
}

你可能感兴趣的:(Java,java,servlet,spring)