5

我的方面如下:

@Aspect
public class SomeAspect{
    //define pointcuts
    // define Advices pertaining to pointcuts
}

我的方面配置 xml 文件:

<?xml ...?>
  <beans ...
   xmlns:aop
   xmlns:context ..>
      <bean id="someAspect" class="...SomeAspect"/>
      <aop:aspectj-autoproxy />

  </beans>

这运行得很好

我需要什么:

我想摆脱在我的配置 xml 文件中为每个方面编写 bean 定义,如上所示。

我尝试了以下方法:

@Component在包含我的方面的相应包中添加SomeAspect和在 xml 中添加<context-component-scan>,希望我的类作为 Bean 和方面被拾取。但是,我的 Aspect 根本没有被接受。

任何指针?

4

1 回答 1

4

context:component-scan元素有一个子元素,您可以使用它来包含注释类,以供扫描使用。

查看context:include-filter元素及其属性。

<context:component-scan base-package="my.package.to.scan">
    <context:include-filter type="annotation" expression="org.aspectj.lang.annotation.Aspect"/>
</context:component-scan>

我认为您尝试过的东西会起作用,但是如果没有完全按照您的做法看到它,很难确定。

于 2013-01-04T23:22:24.313 回答