0

我试图找到有关如何手动配置 RestController(即在 Configuation 类中)的文档。这意味着不使用 RestController 注释。考虑所有其他注释,如映射、路径变量等,是否完全有可能?

4

1 回答 1

0

控制器本质上是具有请求映射的组件。见RequestMappingHandlerMapping

    @Override
    protected boolean isHandler(Class<?> beanType) {
        return (AnnotatedElementUtils.hasAnnotation(beanType, Controller.class) ||
                AnnotatedElementUtils.hasAnnotation(beanType, RequestMapping.class));
    }

如果您想通过配置实例化“休息控制器”,您可以通过以下方式进行:

@Configuration
public class MyConfiguration {
   @Bean
   public MyController() {
      return new MyController();
   }
}
@ResponseBody
public class MyController {
   @RequestMapping("/test")
   public String someEndpoint() {
      return "some payload";
   }
}

但是我认为您无法在配置中配置请求映射(路径变量等);至少我还没有看到一个例子,也没有弄清楚如何。

于 2020-05-28T17:47:50.543 回答