在Spring 2.0中集成AspectJ - 编程入门网
类时为标注@Configurable注解的类织入切面。
首先,我们得将匹配@Configurable注解类的切面类AnnotationBeanConfigurerAspect所在的spring-aspects.jar类包添加到类路径上。spring-aspects.jar类包本身拥有一个aop.xml配置文件,其内容如下所示: 该配置文件会将AnnotationBeanConfigurerAspect和AnnotationTransactionAspect切面类应用到所有类中。 AnnotationTransactionAspect用于处理@Transaction注解,这里我们没有用到。由于,我们希望限制进行AspectJ切面织入目标类的范围,所以我们需要再定义一个aop.xml文件:
通过<weaver>的options属性的设置,指定在日志中显示织入操作的信息,通过<include>元素指定需要进行AspectJ织入的目标类。可以简单地将这个配置文件放到src/META-INF/目录下。 前面,我们提到过切面类AnnotationBeanConfigurerAspect实现了BeanFactoryAware接口,所以需要在Spring配置文件中配置它,以便其可以感知Spring IoC容器,此外我们还需要配置Thread和Topic领域对象Bean,为标注了@Configurable的领域对象提供依赖注入的功能: 在Spring 2.0中集成AspectJ(5)时间:2011-01-02 陈雄华在①处我们声明了一个AnnotationBeanConfigurerAspect Bean,并且定义了factory-method="aspectOf"属性,确保Spring从AspectJ获取切面实例,而不是尝试自己去创建该实例。 Spring在aop命名空间中为配置AntationBeanConfigurerAspect提供了专门的配置元素:<aop:spring-configured/>,可以用这种简洁的配置替代①处的配置。在②和③处,我们在Spring IoC中配置了领域对象Bean。 至此,一切已经就绪,我们可以编写一个测试类测试Spring管理容器外对象的功能:
|
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |