Spring AOP的自动代理

一般情况下的代理针对每一个对象的只能增强都需要新建一个bean标签,当有很多类的时候就显得比较繁琐,这时Spring为我们提供了自动代理

情况1:BeanNameAutoProxyCreator    根据Bean的名称来创建代理

配置:修改一般情况下的代理类ProxyFactoryBean为BeanNameAutoProxyCreator

<bean name="heloService" class="demo6.HelloService"></bean>
<bean name="helloAdvice" class="demo6.HelloAdvice"></bean>

<bean 
		class="org.springframework.aop.framework.autoproxy.BeanNameAutoProxyCreator">
		<property name="beanNames" value="*Service"></property>
		<property name="interceptorNames" value="helloAdvice"></property>
</bean>

注意:该方法的原理是后处理Bean来实现的,因此不必配置name属性,直接使用heloService就可以

情况2:根据Advisor本身包含的信息创建代理

<bean name="helloService" class="demo6.HelloService"></bean>
<bean name="helloAdvice" class="demo6.HelloAdvice"></bean>

	
<bean name="regexAdvisor" class="org.springframework.aop.support.RegexpMethodPointcutAdvisor">
		<property name="advice" ref="helloAdvice"></property>
		<property name="patterns" value=".*add.*"></property>
</bean>
<bean class="org.springframework.aop.framework.autoproxy.DefaultAdvisorAutoProxyCreator"></bean>




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值