spring aop

aop术语

AOP的实现其实是利用了动态代理,在不改变原码的情况下对代码进行增强

Joinpoint 连接点:业务层接口的所有方法都是连接点
Pointcut 切入点:被增强的方法
Advice 通知:增强的代码在哪,哪个类就是通知

前置通知:写在被切入点方法前的是前置通知
后置通知:写在被切入点方法后的是后置通知
异常通知:写在catch中的是异常通知
最终通知:写在finally中的是最终通知
环绕通知:整个Object invoke(…,…,…)方法体是环绕通知

Target 目标对象:被代理的对象
Weaving 织入:增强代码已经进入到我们的业务逻辑,它被执行的那个动作叫织入
切面:切入点和通知的结合,就是切入点方法什么时候执行

aop配置

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:aop="http://www.springframework.org/schema/aop"
    xsi:schemaLocation="
        http://www.springframework.org/schema/beans
        http://www.springframework.org/schema/beans/spring-beans.xsd
        http://www.springframework.org/schema/aop
        http://www.springframework.org/schema/aop/spring-aop.xsd">

    <!-- 第一步:把通知类交给spring来管理 -->
    <bean id="logger" class="com.itheima.utils.Logger"></bean>
    <!-- 第二步:导入aop名称空间,并且使用aop:config开始aop配置-->
    <aop:config>
		<!-- 第三步:使用aop:aspect配置切面,id属性:用于给切面提供一个唯一标识。ref属性:用于应用通知Bean的id-->
		<aop:aspect id="logAdvice" ref="logger">
		<!-- 第四步:配置通知的类型,指定增强的方法何时执行。mehod属性:用于指定增强的方法名称 pointcut属性:用于指定切入点表达式-->
		<!-- 切入点表达式:
				关键字:execution(表达式)
				表达式写法:访问修饰符 返回值 包名.包名...类名.方法名(参数列表)
			-->
		<aop:before method="printLog" pointcut="execution(.......自己写)">
	</aop:config>

</beans>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值