我的观点如下:
@Aspect
public class SomeAspect{
//define pointcuts
// define Advices pertaining to pointcuts
}
我的aspect-config xml文件:
<?xml ...?>
<beans ...
xmlns:aop
xmlns:context ..>
<bean id="someAspect" class="...SomeAspect"/>
<aop:aspectj-autoproxy />
</beans>
这完全没问题
我需要什么:
我想摆脱每个Aspect的写bean定义,如上面的config xml文件中所示。
我尝试了以下内容:
在@Component
上添加了SomeAspect
,在xml中添加了<context-component-scan>
包含我的Aspect的相应包,希望我的类能够被选为Bean和Aspect。
但是,我的看点根本没有被接受。
任何指针?
答案 0 :(得分: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>
我认为你所尝试的会有所作为,但如果没有像你那样完全看到它,很难肯定地说。