controller 通过配置替换@RequestMapping
时间: 2023-11-10 17:11:33 浏览: 200
在 Spring 5 中,可以使用 @GetMapping、@PostMapping、@PutMapping 等注解代替 @RequestMapping 注解,它们更加语义化,可以让代码更加清晰易懂。如果需要在类级别上定义一个路径前缀,可以使用 @RequestMapping 注解,如下所示:
```java
@RestController
@RequestMapping("/api/v1")
public class MyController {
// ...
}
```
这个控制器类中的所有方法都将映射到 /api/v1 路径下。如果需要在方法级别上定义一个路径后缀,可以在 @GetMapping、@PostMapping、@PutMapping 等注解中使用 value 属性,如下所示:
```java
@RestController
@RequestMapping("/api/v1")
public class MyController {
@GetMapping("/hello")
public String hello() {
return "Hello, world!";
}
}
```
这个方法将映射到 /api/v1/hello 路径下。如果需要定义多个路径,可以使用 @RequestMapping 或者 @GetMapping、@PostMapping、@PutMapping 等注解的 value 属性传入一个字符串数组,如下所示:
```java
@RestController
@RequestMapping({"/api/v1", "/api/v2"})
public class MyController {
@GetMapping("/hello")
public String hello() {
return "Hello, world!";
}
}
```
这个方法将同时映射到 /api/v1/hello 和 /api/v2/hello 路径下。
阅读全文