Spring 引导如何在内部知道控制器的端点



如果在spring boot应用程序中有十个rest控制器,并且每个控制器都有10个方法,我想调用第十个控制器第九个方法,

弹簧靴内部的工作效率如何?

您所询问的是由Spring MVC请求映射管理的。Spring引导提供了自动配置Spring MVC的启动器。

在您的情况下,我想每个方法都会用@RequestMapping(或其HTTP方法特定的快捷方式变体之一,如@GetMapping、@PostMapping…(进行注释您可以在春季文档中找到@RequestMapping的工作原理

要对其进行汇总,您必须使用@RequestMapping对每个方法进行注释。Spring有一个通用的入口点(dispatcher servlet(,它拦截所有传入的请求并将它们转发到正确的控制器。

@RestController
public class Controller1 {
@GetMapping("/endpoint1")
public String method1() {
return "Controller1.endpoint1";
}
@GetMapping("/endpoint2")
public String method2() {
return "Controller1.endpoint2";
}
}

请注意,SpringMvc不允许ambigus请求映射。您不能有多个具有某些请求映射url的方法(您的应用程序将不会启动(

最新更新