04面向切面编程(AOP).pdfVIP

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
04面向切面编程(AOP)

第四章 面向切面编程(AOP ) 4 Jan. 2009Copyright 2008 By Neusoft Group. All rights reservedCopyright 2009 By Neusoft Group. All rights reserved © Neusoft Confidential 简介 –Spring的一个关键的组件就是AOP框架。尽管如此,Spring IoC 容器并不依赖于AOP ,这意味着你可以自由选择是否使用AOP , AOP提供强大的中间件解决方案,这使得Spring IoC容器更加完 善。 –Spring AOP的出现是为了取代EJB中的事务机制,它有这种声明 式的事务机制,其实AOP 的这种思想早就已经有了,并不是一种 什么新的技术,也并不是说专门由java这里来实现的。 –面向切面编程(AOP )提供另外一种角度来思考程序结构,通过 这种方式弥补了面向对象编程(OOP )的不足。 4 Jan. 2009 Confidential 简介 –AOP最重要的一点,就是提供了声明式服务,好在哪里呢?使得我 们不用修改代码,就具有了这种能力,EJB的事务管理只能用在 EJB组件上,而spring提供的这种功能,能够对普通java对象提供这 种声明式事务管理服务,而且这种普通java对象pojo,是不实现任 何接口的,即,我们不用实现Spring的任何接口,或是继承spring 的任何类,就拥有了这种能力,让我们的对象在透明的情况下、不 知道的情况下拥有了这样的能力。 4 Jan. 2009 Confidential AOP涉及到的概念 • 切面(Aspect ):一个关注点的模块化,这个关注点可能会横切多个对象。事 务管理是J2EE应用中一个关于横切关注点的很好的例子。在Spring AOP中,切面 可以使用通用类(基于模式的风格)或者在普通类中以@Aspect 注解 (@AspectJ风格)来实现。 • 连接点(Joinpoint ):在程序执行过程中某个特定的点,比如某方法调用的时 候或者处理异常的时候。在Spring AOP中,一个连接点总是代表一个方法的执 行。通过声明一个org.aspectj.lang.JoinPoint类型的参数可以使通知(Advice )的 主体部分获得连接点信息。 • 通知(Advice ):在切面的某个特定的连接点(Joinpoint )上执行的动作。通 知有各种类型,其中包括“around ”、“before”和“after ”等通知。通知的类型 将在后面部分进行讨论。许多AOP框架,包括Spring,都是以拦截器做通知模型, 并维护一个以连接点为中心的拦截器链。 4 Jan. 2009 Confidential AOP涉及到的概念 • 切入点(Pointcut ):匹配连接点(Joinpoint )的断言。通知和一个 切入点表达式关联,并在满足这个切入点的连接点上运行(例如,当 执行某个特定名称的方法时)。切入点表达式如何和连接点匹配是 AOP 的核心:Spring缺省使用AspectJ切入点语法。 • 引入(Introduction):(也被称为内部类型声明(inter-type declaration ))。声明额外的方法或者某个类型的字段。Spring允许 引入新的接口(以及一个对应的实现)到任何被代理的对象。例如, 你可以使用一个引入来使bean实现IsModified 接口,以便简化缓存机 制。 • 目标对象(Target Object):被一个或者多个切面(aspect )所通知 (advise )的对象。也有人把它叫做被通知(advised )对象。既然 Spring AOP是通过运行时代理实现的,这个对象永远是一个被代理 (proxied)对象。 4 Jan. 2009 Confidential AOP涉及到的概念 • AOP代理(AOP Proxy ):AOP框架创建的对象,用来实现切面契约 (aspect contract )(包括通知方法执行等功能)。在Spring中,AOP代 理可以是JDK动态代理或者CGLIB代理。注意:Spring 2.0必威体育精装版

文档评论(0)

yan698698 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档