2014-11-30 2 views
1

나는이 같은 코드를 woking 할 수 있습니다. 어떻게해야합니까?Spring MVC Controller Annotation을 확장하는 방법은 무엇입니까?

@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 { 
+0

당신은 무엇을하고 싶습니까? 더 설명해 주시겠습니까? – AHC

+1

@AHC 컨트롤러 및 RequestMapping 대신 RSI 주석을 원합니다. 경로는/RSI – Tan

+0

으로 시작합니다.이 기사는 질문에 대한 대답입니다 : [Java에서 주석을 확장 할 수없는 이유는 무엇입니까?] (http://stackoverflow.com/questions/1624084/why-is-not-possible-to-extend- annotations-in-java) 죄송합니다. – kemot90

답변

1

봄은 등록하고 당신이 @Controller 클래스에서 선언 처리기 메서드를 처리합니다 (MVC 구성에 등록 된 콩 등) 클래스의 번호를 사용합니다. 당신이 봐야 할 두 가지 주요 클래스는 RequestMappingHandlerMappingRequestMappingHandlerAdapter입니다.

그들은 당신이 제안하고있는 것을 수행 할 방법이 없습니다. 이러한 유형을 확장하거나 (적절한 인터페이스로 새로운 유형을 작성해야 함) 위의 유형 대신 등록해야합니다. 이것은 사소한 일이 아닙니다.

관련 문제