《Spring AOP隐藏注解配置的解决方案》.pdfVIP

  • 27
  • 0
  • 约1.37万字
  • 约 5页
  • 2015-11-08 发布于河南
  • 举报

《Spring AOP隐藏注解配置的解决方案》.pdf

《Spring AOP隐藏注解配置的解决方案》.pdf

2014年3月 重庆文理学院学报 Mar.2014 of ofArtsandSciences Vol33No.2 第33卷第2期 Journal ChongqingUniversity AOP隐藏注解配置的解决方案 Spring 林亚明,林叶郁,李佐勇,苏 草 (闽江学院计算机科学系,福建福州350108) AOP生成的代理会隐藏原始类的注解,从而导致第三方框架注解配置失 [摘要]针对Spring 效的问题,设计并实现了一个用于注解配置的通用适配器工具类.该工具类利用Javassist动态 代码生成技术自动对Spring生成的目标AOP代理对象进行二次代理.生成的二次代理对象既 保持了AOP代理对象的功能,又含有原始类的第三方框架注解信息.该解决方案使得第三方 框架无需添加代码,就可在Spring组件环境中正常使用注解信息,尤其适用于遗留第三方框 级,给企业项目框架整合带来便利. [关键词]注解配置;SpringAOP;javassist框架;适配器设计模式 Spring框架¨。21通过依赖注入∞1和面向方 1 Spring注解配置整合方法及其存在的 面编程H1技术给组件管理带来便利,因此Java 问题 项目的技术选型经常采用Spring框架作为项目 的核心基础框架.Java语言的注解机制能够给 Spring框架有多种代理对象的配置方式,不 类、方法甚至是参数等”1添加元信息.由于注解 失一般性,通过支持Xmlschema方式的配置代 信息与相关的代码放在一起,方便维护和理解, 码作为说明例子,以下是主要配置信息: 注解技术已经成为XML配置方式之后另一种高 aop:config 效的配置手段.某些第三方框架由于各种原因只 aop:pointeut 有注解配置一种方式,然而Spring框架的AOP 水.木.水(..))” 生成的代理对象不含有原始类的非@inherited id=’’logPoint”/ 注解信息,这时AOP代理将会影响第三方框架 aop:advisoradvice—ref=”logAdvice’’ 的执行.例如,ZK框架的表现层支持MVVM设 pointcut—ref=”logPoint”/ 计模式MJ,其配置只能通过注解进行,如果利用 /aop:config Spring的AOP对ViewModel的事件进行日志,将 导致运行异常.原因在于ViewModel对象由于使 件时,Spring将日志Advice织入到视图控制器组 用了代理对象使得ZK引擎无法在运行时刻访 件中,Spring通过反射机制动态给该Spring组件 AOP与 问其注解信息.因此,有必要分析Spring 包装代理对象.如果该Spring组件有实现接口, 第三方框架注解配置的功能整合问题. API.如果该

文档评论(0)

1亿VIP精品文档

相关文档