7、Spring AOP 代理:深入解析与应用实践

Spring AOP 代理:深入解析与应用实践

1. 代理冻结与自动代理概述

在 Spring AOP 中,若不想再允许对代理进行更改,可以将代理属性 setFrozen 设置为 true 。设置之后,任何添加或移除通知的尝试都会引发 AopConfigException 。冻结代理状态是个不错的选择,例如在管理安全相关的切面时,移除任何类型的通知或拦截器意味着撤销授权规则。

Spring 还支持“自动代理”的 Bean 定义,它可以自动为选定的 Bean 创建代理。

2. 经典 Spring 自动代理

在使用 ProxyFactoryBean 时,我们了解到经典的 AOP 使用方式。但为每个需要应用通知的 Bean 单独编写配置显然不是个好办法,尤其是当 Bean 数量较多时。所以,只有当需要配置的 Bean 数量较少时,这种方式才具有可行性。
若需要对大量 Bean 应用 AOP,为避免配置文件过长,可采用自动代理创建系统,它能自动为 Bean 创建代理,从而避免使用 ProxyFactoryBean 。Spring 提供了两种自动代理创建类: BeanNameAutoProxyCreator DefaultAdvisorAutoProxyCreator

2.1 BeanNameAutoProxyCreator

BeanNameAutoProxyCreator

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值