一、目标对象实现代理接口,使用动态代理机制(JDK的proxy)
1、由于JDK的代理方式要求目标对象实现了接口。
2、相关类java.lang.reflect.Proxy、java.lang.reflect.InvocationHandler。
二、若目标对象未实现代理接口,使用动态代理机制(CGLIB项目)
1、CGLIB通过生成目标对象的子类。
三、两种实现的比较
1、CGLIB生成的代理对象运行的快。
2、JDK生成代理所用的时间少。
四、强制代理方式
1、一般情况下Spring会自动分析目标类是否实现了接口,自动选择两种方式。
2、要强制,可以将代理类org.springframework.aop.framework.ProxyFactoryBean的proxyTargetClass属性为设为true,Spring就会用CGLIB代理,否则用JDK代理。
<bean id="customerServiceProxy" class="org.springframework.aop.framework.ProxyFactoryBean">
<!-- 若目标对象实现了代理接口,则可以提供代理接口的配置 -->
<property name="proxyInterfaces" value="aop.spring.ICustomerServiceProxy" />
<!-- 配置目标对象 -->
<property name="target" ref="customerServiceTarget" />
<!-- 配置切面 -->
<property name="interceptorNames">
<list>
<value>logIntercepter</value>
</list>
</property>
[b]<property name="proxyTargetClass" value="true"></property>[/b]
</bean>
分享到:
相关推荐
Spring_AOP笔记Spring_AOP笔记Spring_AOP笔记Spring_AOP笔记Spring_AOP笔记Spring_AOP笔记Spring_AOP笔记
李君老师JavaEE笔记-SpringAop
自己学习spring课程的笔记。笔记都是根据尚硅谷的课程(spring ioc,spring aop,spring mvc,spring boot等)写的。 主要内容:spring ioc,spring aop,spring mvc,spring boot
SpringAOP学习笔记以及四个可运行的Demo,涵盖经典代理模式、基于注解、基于xml配置这3方面的Demo
NULL 博文链接:https://microjava.iteye.com/blog/525796
1.Spring入门和IOC介绍 2.对象依赖 3.AOP入门 4.JDBCTemplate和Spring事务 5.Spring事务原理 6.Spring事务的一个线程安全问题 7.IOC再回顾和面试题 8.AOP再回顾
NULL 博文链接:https://linres.iteye.com/blog/281221
Spring Aop 学习笔记
aop分析笔记 个人总结所得 org.springframework.aop.framework.autoproxy
Spring AOP源码笔记
ssh-aop笔记
从Spring5-AOP的概念->底层原理->相关术语->AOP操作(AspectJ注解)->AOP操作(AspectJ配置文件)说明AOP的相关笔记
Spring的AOP开发(XML)Spring的AOP的注解开发 代码案例
NULL 博文链接:https://coolszy.iteye.com/blog/540465
第八课:Spring AOP配置选项 21 一、 AOP配置annotation方式 21 (一) 搭建annotation开发环境 21 (二) aspectJ类库 22 (三) AOP的annotation实例 22 (四) AspectJ的专业术语 23 (五) 织入点语法 23 (六) Advice 24 ...
1,spring是一个开源的免费的框架(容器)。 2,spring是一个轻量级的,非入侵式的框架。 非入侵式:就是项目引入了这个框架之后,...总结:spring就是一个轻量级的控制反转(IOC)和面向切面编程(AOP)的框架。
NULL 博文链接:https://coolszy.iteye.com/blog/541997
第二天内容:AOP(AOP常用概念、Spring的三种aop实现方式、代理设计模式(静态代理和动态代理));第三天内容:Spring自动装配,Spring自动加载properties文件,单例设计模式,声明式事务,Ajax,JSON。 --author:
Spring学习笔记Spring spring的配置 IOC 依赖注入 基于Xml的注入 基于注释的注入 Spring的自动注入和属性自动注入 AOP 静态代理 动态代理 使用spring实现AOP 基于Annotation实现AOP 基于XML实现AOP ...
NULL 博文链接:https://ysj5125094.iteye.com/blog/2055563