我正在尝试获得
http://localhost/ - display Welcome page
http://localhost/api/v1/getUser - do the `getUser` controller part
http://localhost/api/v1/addUser - do the `addUser` controller part
所以我为此部分创建了简单的控制器
@RestController
public class restController {
@GetMapping("/")
public String restAPI() {
return "Welcome Page";
}
@RequestMapping("/api/v1")
@PostMapping("/addUser")
@ResponseBody
public User addUser(@RequestBody User user) {
//do the stuff
}
@RequestMapping("/api/v1")
@GetMapping("/getUser")
@ResponseBody
public User getUser(@RequestBody User user) {
//do the stuff
}
我得到的只是“欢迎页面”,但无法访问任何端点。当我删除了负责restAPI()
的部分后,我就可以到达这两个端点。
是否可以混合使用@RequestMapping
?
答案 0 :(得分:1)
最好的解决方案是创建两个这样的控制器:
@RestController
@RequestMapping("/")
public class HomeController {
@GetMapping
public String restAPI() {
return "Welcome Page";
}
}
如果您向http://localhost/发送GET请求,则会显示欢迎页面。
并且:
@RestController
@RequestMapping("/api/v1")
public class UserController {
@PostMapping
public User addUser(@RequestBody User user) {
//do the stuff
}
@GetMapping
public User getUser(@RequestBody User user) {
//do the stuff
}
}
通过发送POST或GET到http://localhost/api/v1/并创建一个用户或获得一个。