【翠花学Spring】Spring框架深入学习

增强类型扩展

异常抛出增强

异常抛出增强是指当目标对象方法抛出异常时进行织入操作的一种增强方式。通常,异常抛出增强用来为项目提供统一的异常处理功能,具有可灵活插拔的功能。

语法

<aop:config>
    <!--异常抛出增强-->
    <aop:aspect ref="增强方法所在的Bean">
        <aop:after-throwing method="增强处理方法" pointcut-ref="切入点id" throwing="e"/>
    </aop:aspect>
</aop:config>

示例

创建一个类作为切入点,并写上异常

定义异常处理类,并在类中创建处理异常的方法

根据语法编写配置文件,要先引入aop命名空间

编写测试类完成测试

最终增强

最终增强是指无论目标对象的方法正常运行还是抛出异常,该增强处理都会被执行的一种增强方式,通常用于释放资源等操作,具有可灵活插拔的特点。

语法

<aop:config>
    <!--最终增强-->
    <aop:aspect ref="增强方法所在的Bean">
        <aop:after method="增强处理方法" pointcut-ref="切入点id"/>
    </aop:aspect>
</aop:config>

示例

编写一个最终增强类

根据语法编写配置文件

打开刚刚所写的测试类进行测试

无论目标对象的方法是否存在异常,最终增强都会执行。

 环绕增强

环绕增强是指在目标对象方法前后都可以进行织入的一种增强处理方式。在环绕增强处理中,可以获取或修改目标方法的参数,返回值,可以对他进行异常处理,甚至可以决定目标方法是否被执行。

语法

<aop:config>
    <!--环绕增强-->
    <aop:aspect ref="增强方法所在的Bean">
        <aop:around method="增强处理方法" pointcut-ref="切入点id"/>
    </aop:aspect>
</aop:config>

示例

编写环绕增强处理类

根据语法编写配置文件

打开测试类查看结果

正常运行时:

当目标方法出现异常时:

当环绕增强不执行目标方法时:

可以获取目标对象的信息:

从执行结果中可以看出,使用环绕增强的方式可以获取目标对象方法的参数,返回值等信息,可以控制目标方法调用。环绕增强是功能最强大的增强处理,Spring框架中的目标方法全部由他控制。

依赖注入方式扩展

构造注入

构造注入是指Spring框架通过构造方法为属性赋值的一种注入方式。构造注入可以在对象初始化时为属性赋值,具有良好的时效性。

语法

<bean id="唯一标识" class="类的全路径">
    <!--构造注入-->
    <constructor-arg name="参数名称" type="参数类型" value=""/>
</bean>

示例

创建实体类,添加属性并进行封装,添加构造方法

根据语法编写配置文件

 创建测试类进行测试

不同类型注入

1.空字符串和null

2.基本数据类型,字符串

3.集合和数组

 使用注解实现SpringIOC

创建目标对象

创建注解类

创建配置文件中扫描注解

创建测试类

环绕注解

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

BUG忠实爱好者

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值