2011-08-25 4 views
2

봄에 @Aspect 요청 범위를 만들 수 있습니까? 그것은 그것이 작동하지 않는 것처럼 보이기 때문에, 그리고 일종의 의미가 있습니다; 프록시 객체는 실제로 어디에도 삽입되지 않으며, 조언은 런타임에 의해 방금 적용됩니다. 그냥 ...봄에 @Aspect 요청 범위를 만들 수 있습니까?

예를 궁금해 :

@Aspect 
public class MyAspect { 
    // expecting this to get autowired per request 
    @Autowired private HttpServletRequest request; 

    @Around(...) 
    public void doSomething(ProceedingJoinPoint pjp) { 
     // something here 
     pjp.proceed(); 
     // something there 
    } 
} 

그리고 XML에서

:

<bean class="MyAspect" scope="request" /> 
+1

정확히하고 싶습니까? – Cygnusx1

+0

@ Cygnusx1 : 예제가 – Kevin

답변

0

오히려 측면을 사용하는 것보다, HandlerInterceptor를 구현합니다. 그런 다음 요청을 포함하여 모든 일반 객체에 대한 간단한 액세스 권한을 가지며 사전 및 사후 핸들 메소드를가집니다.

+0

인 편집 된 질문 aspect를 싱글 톤 빈으로 만들고 autowired HttpServletRequest를 보유하고있는 별도의 요청 범위 빈을 주입했다. 그러나 당신의 대답도 효과가 있습니다. – Kevin

관련 문제