2. @RequestMapping
@RequestMapping
是一个用来处理请求地址映射的注解,它可以用于类上,也可以用于方法上。在类的级别上的注解会将一个特定请求或者请求模式映射到一个控制器之上,表示类中的所有响应请求的方法都是以该地址作为父路径;在方法的级别表示进一步指定到处理方法的映射关系。
该注解有6个属性,一般在项目中比较常用的有三个属性:value、method 和 produces。
- value 属性:指定请求的实际地址,value 可以省略不写
- method 属性:指定请求的类型,主要有 GET、PUT、POST、DELETE,默认为 GET
- produces属性:指定返回内容类型,如 produces = "application/json; charset=UTF-8"
@RequestMapping
注解比较简单,举个例子:
@RestController
@RequestMapping(value = "/test", produces = "application/json; charset=UTF-8")
public class TestController {
@RequestMapping(value = "/get", method = RequestMethod.GET)
public String testGet() {
return "success";
}
}
这个很简单,启动项目在浏览器中输入 localhost:8080/test/get
测试一下即可。
针对四种不同的请求方式,是有相应注解的,不用每次在 @RequestMapping
注解中加 method 属性来指定,上面的 GET 方式请求可以直接使用 @GetMapping("/get")
注解,效果一样。相应地,PUT 方式、POST 方式和 DELETE 方式对应的注解分别为 @PutMapping
、@PostMapping
和 DeleteMapping
。