如何忽略类级@RequestMapping("/home")
并在Spring中直接调用方法级@RequestMapping("/users")
?
@Controller
@RequestMapping("/home")
@RequestMapping("/method1")
public void method1(){
...
}
@RequestMapping("/users")
public void listUsers(){
...
}
我想调用http://localhost:8080/users
来调用listUsers()
方法。
答案 0 :(得分:1)
您无法绕过在类级别定义的请求映射。如果是这样,为什么你想要一个类级映射然后...你可以在方法级请求映射
中做类似的事情@Controller
@RequestMapping("/home/method1")
public void method1(){
...
}
@RequestMapping("/users")
public void listUsers(){
...
}
在这种情况下,你可以试试这个......
@Controller
@RequestMapping({ "/home", "/users" })
@RequestMapping("/method1")
public void method1(){
...
}
@RequestMapping(method="RequestMethod.GET")
public void listUsers(){
...
}
答案 1 :(得分:0)
更改@RequestMapping("/users")
@RequestMapping(method=RequestMethod.GET)
答案 2 :(得分:0)
根据我的理解,您期望的是类级别 RequestMapping。 方法级 RequestMapping应位于 class-level 的路径下。
我会举几个例子:
@RestController
@RequestMapping("/home")
public class HomeController {
// Full path of following endpoint: /home/parents.
@RequestMapping(value = "/parents", method = RequestMethod.GET)
public ResponseEntity<List<People>> getParents() {
return ResponseEntity.ok(methodToGetParents());
}
对于“用户”的路径,你应该在另一个类(控制器)中执行:
@RestController
@RequestMapping("/users")
public class UsersController {
// Full path of following endpoint: /users.
@RequestMapping(method = RequestMethod.GET)
public ResponseEntity<List<People>> getUsers() {
return ResponseEntity.ok(methodToGetUsers());
}