Spring AOP без XML - PullRequest
       4

Spring AOP без XML

6 голосов
/ 12 декабря 2011

Я пытаюсь настроить Spring AOP без какого-либо XML и задаюсь вопросом, как включить автоматическое проксирование таким образом.

Определение компонента AutoProxyCreator работает, но разве нет более простого способа?

Вот как выглядит моя @Configuration:

@Configuration
public class Context {
    @Bean
    public AnnotationAwareAspectJAutoProxyCreator annotationAwareAspectJAutoProxyCreator() {
        return new AnnotationAwareAspectJAutoProxyCreator();
    };
    ...
}

Все остальные бины сканируются с помощью AnnotationConfigApplicationContext.

Ответы [ 2 ]

7 голосов
/ 12 декабря 2011

Spring 3.0.x не предоставляет простых способов замены расширений пространств имен XML (таких как <aop:aspectj-autoproxy>) в @Configuration.

Предстоящая версия Spring 3.1 будет поддерживать специальные аннотации для этой цели, такие как@EnableAspectJAutoProxy.

0 голосов
/ 14 декабря 2011

Наконец-то я нашел эстетически приятный способ добавить AnnotationAwareAspectJAutoProxyCreator:

AnnotationConfigApplicationContext context = new AnnotationConfigApplicationContext();
context.register(AnnotationAwareAspectJAutoProxyCreator.class);
context.scan("com.myDomain");
context.refresh();
...