`
- 浏览:
328718 次
- 性别:
- 来自:
北京
-
Spring AOP的底层就是通过使用JDK动态代理或CGLib动态代理技术为目标Bean织入横切逻辑。在这里,我们对前面两节动态创建代理对象作一个小结。
我们虽然通过PerformanceHandler或CglibProxy实现了性能监视横切逻辑的动态织入,但这种实现方式存在三个明显需要改进的地方:
1)目标类的所有方法都添加了性能监视横切逻辑,而有时,这并不是我们所期望的,我们可能只希望对业务类中的某些特定方法添加横切逻辑;
2)我们通过硬编码的方式指定了织入横切逻辑的织入点,即在目标类业务方法的开始和结束前织入代码;
3)我们手工编写代理实例的创建过程,为不同类创建代理时,需要分别编写相应的创建代码,无法做到通用。
以上三个问题,在AOP中占用重要的地位,因为Spring AOP的主要工作就是围绕以上三点展开:Spring AOP通过Pointcut(切点)指定在哪些类的哪些方法上织入横切逻辑,通过Advice(增强)描述横切逻辑和方法的具体织入点(方法前、方法后、方法的两端等)。此外,Spring通过Advisor(切面)将Pointcut和Advice两者组装起来。有了Advisor的信息,Spring就可以利用JDK或CGLib的动态代理技术采用统一的方式为目标Bean创建织入切面的代理对象了。
JDK动态代理所创建的代理对象,在JDK 1.3下,性能强差人意。虽然在高版本的JDK中,动态代理对象的性能得到了很大的提高,但是有研究表明,CGLib所创建的动态代理对象的性能依旧比JDK的所创建的代理对象的性能高不少(大概10倍)。但CGLib在创建代理对象时所花费的时间却比JDK动态代理多(大概8倍),所以对于singleton的代理对象或者具有实例池的代理,因为无须频繁创建代理对象,所以比较适合用CGLib动态代理技术,反之适合用JDK动态代理技术。值得一提的是,由于CGLib采用动态创建子类的方式生成代理对象,所以不能对目标类中的final方法进行代理。
分享到:
Global site tag (gtag.js) - Google Analytics
相关推荐
税务规划中的税务代理知识是企业或个人在处理税务事务时不可或缺的一部分,主要涉及税务代理的定义、特性、原则以及操作的法律关系和责任。税务代理是注册税务师在法定范围内,代表纳税人或扣缴义务人处理税务事务的...
【电脑代理知识手册范本.pdf】是一份详细指导如何成为一名成功的电脑代理的手册。这份手册主要面向大学生,旨在教授如何利用个人社交网络推广电脑销售,从而实现盈利和职业发展。 代理的主要任务是利用身边的资源,...
以下是对税务代理知识的详细概述: 税务代理是指具有专业资质的注册税务师为企业和个人提供税务咨询服务和代理服务。在中国,注册税务师必须在注册税务师管理机构进行注册,且每次注册的有效期为三年,期间每年需要...
电脑代理知识手册范本.doc
根据提供的文件信息,我们可以总结出以下知识点: 一、什么是代理模式 代理模式是一种设计模式,它允许用户不直接调用目标对象,而是通过调用代理对象来调用目标对象。代理对象充当着中间人的角色,它可以在不修改...
在代理应用中用到的端口知识介绍。
国际货运代理自10世纪起源于欧洲,经历了多个关键阶段,包括20世纪30年代航空货运代理的兴起,50年代公路运输代理的形成,60年代无船承运人的介入,70年代至80年代的多式联运阶段,以及90年代以来第三方物流服务的...
代理服务知识大全,介绍常见的代理服务器知识
1. 加大宣传力度,普及税务代理知识,提高纳税人的税务代理意识,推动潜在需求转变为实际需求。 2. 提升税务代理行业立法层次,制定《注册税务师法》,为税务代理提供坚实的法律基础,明确税务代理人的权利和义务。 ...
### Nginx 反向代理知识点详解 #### 一、代理概述 代理是一种常见的网络通信方式,它在客户端与服务器之间架设了一座桥梁。在实际应用中,代理分为正向代理和反向代理两种类型。 **代理的概念:** 在Java设计模式...
代理服务器基础知识;扫盲篇,进阶篇,高级篇代理服务器基础知识;扫盲篇,进阶篇,高级篇
代理服务知识大全 代理服务知识大全 代理服务知识大全
5. 行政复议与诉讼代理:律师可代表客户处理对专利行政部门、商标审查委员会决定的不满,代理知识产权相关的民事诉讼和行政诉讼案件,如专利确权、侵权纠纷、商标转让争议等。 6. 诉前措施:在诉讼前,律师可以申请...
代理服务器知识大全代理服务器知识大全代理服务器知识大全代理服务器知识大全
通过以上策略,你可以逐步提升对专利代理知识的理解,为顺利通过考试打下坚实基础。对于学术背景的考生,增强专利知识不仅可以拓宽职业道路,也能提高科研项目的保护能力。所以,全力以赴,祝你好运!
关于作代理服务器的各种知识,网管必备教程
### Java 设置 HTTP 代理知识点详解 #### 一、概述 在进行网络请求时,有时我们需要通过代理服务器来访问目标资源,特别是在开发环境或测试环境中,使用代理可以绕过某些网络限制,实现对特定资源的访问。Java ...