Java 如何扩展SpringMVC控制器注释?

Java 如何扩展SpringMVC控制器注释?,java,spring-mvc,Java,Spring Mvc,我想这样的代码可以工作。我该怎么办 @Target(value=ElementType.TYPE) @Retention(value=RetentionPolicy.RUNTIME) @Controller @RequestMapping(value=RSI.DEFAULT_MAPPING + mapping()) public @interface RSI { public final static String DEFAULT_MAPPING = "/RSI"; public Str

我想这样的代码可以工作。我该怎么办

@Target(value=ElementType.TYPE)
@Retention(value=RetentionPolicy.RUNTIME)
@Controller
@RequestMapping(value=RSI.DEFAULT_MAPPING + mapping())
public @interface RSI {
  public final static String DEFAULT_MAPPING = "/RSI";
  public String mapping() default "";
}


@RSI(mapping="/XXX")
public class XXXRSI {

Spring使用许多类(作为在MVC配置中注册的bean)来注册和处理您在
@Controller
类中声明的处理程序方法。您应该查看的两个主要类是
RequestMappingHandlerMapping
RequestMappingHandlerAdapter


他们没有内在的方式来做你建议的事情。您必须扩展这些类型(或者使用适当的接口编写新的类型),并注册它们,而不是上面提到的类型。这不是一件小事。

你到底想做什么?解释更多?@AHC我想要RSI注释,而不是控制器和请求映射。这篇文章回答了你的问题:恐怕这是不可能的。