
一、AOP相关概念
Joinpoint(连接点):就是方法
Pointcut(切入点):就是挖掉共性功能的方法
Advice(通知):就是共性功能,最终以一个方法的形式呈现
Aspect(切面):就是共性功能与挖的位置的对应关系
Target(目标对象):就是挖掉功能的方法对应的类产生的对象,这种对象是无法直接完成最终工作的
Weaving(织入):就是将挖掉的功能回填的动态过程
Proxy(代理):目标对象无法直接完成工作,需要对其进行功能回填,通过创建原始对象的代理对象实现
Introduction(引入/引介)︰就是对原始对象无中生有的添加成员变量或成员方法
平常开发的所有方法都叫做连接点
共性功能所在的地方叫做切入点
共性挖掉后叫做通知
切入点与通知的连接处叫做切面
具体挖的位置叫做通知类型
在运行的时候,运行的原始对象叫做目标对象,目标对象不能真正的运行出结果,我们要在它运行的时候把目标对象给它加进去
,这个过程叫做织入
织入对应东西的地方在哪里,是通过原始目标对应的哪个类代理出来的创建的一个代理类
二、AOP开发过程
我们一般只需要做切入点、切面、通知
三、xml案例
1、
1.1坐标
1.2、需要的基本类和配置文件
2、制作通知类,在类中定义一个方法用于完成共性功能
2.1.制作通知类,在类中定义一个方法用于完成共性功能
2.2、
代码:
- <?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:context="http://www.springframework.org/schema/context"
- xmlns:aop="http://www.springframework.org/schema/aop"
- xsi:schemaLocation="http://www.springframework.org/schema/beans
- https://www.springframework.org/schema/beans/spring-beans.xsd
- http://www.springframework.org/schema/context
- https://www.springframework.org/schema/context/spring-context.xsd
- http://www.springframework.org/schema/aop
- https://www.springframework.org/schema/aop/spring-aop.xsd">
-
- <!--3.开启AoP命名空间-->
- <bean id="userService" class="com.itheima.service.impl.UserServiceImpl"/>
- <!--2.配置共性功能成功spring控制的资源-->
- <bean id="MyAdvice" class="com.itheima.aop.AOPAdvice"/>
- <!--4 .配置Aop-->
- <aop:config>
- <!-- 5.配置切入点-->
- <aop:pointcut id="pt" expression="execution(* *..*(..))"/>
- <!--6.配置切面(切入点与通知的关系)-->
- <aop:aspect ref="MyAdvice">
- <!--7.配置具体的切入点对应通知中那个操作方法-->
- <aop:before method="function" pointcut-ref="pt"/>
- </aop:aspect>
- </aop:config>
- </beans>
评价
排名
4
文章
473
粉丝
3
评论
2
ICP备案 :渝ICP备18016597号-1
网站信息:2018-2025TNBLOG.NET
技术交流:群号656732739
联系我们:contact@tnblog.net
公网安备:
50010702506256


欢迎加群交流技术