AOP静动态

代理:代理的思想是 由于我们的项目中 会存在着一些核心的业务功能 以及一些额外的功能。 对于额外的功能我们想在需要的时候引入,不用的时候拿掉。 代理类的引入提高了额外功能使用的灵活性,提高了项目的可维护性。

#动态代理

一:开发步骤
1.编写原始类

2.编写额外功能(通知)
###1前置通知,在原始核心功能前加入的额外功能 实现MethodBeforeAdvice

public void before(Method methdo, Object[] arrs ,Object obj)throwable{
System.out.println("核心功能执行前的额外功能");
};

###后置通知:在原始核心功能后加入的额外功能
###环绕通知:在原始核心功能的前后都加入额外功能
###异常通知 :当原始核心功能抛出异常时,加入的额外功能

定义切点:切点是指额外功能在项目中所要加入的位置。
<aop:pointcut expression = "execution(* .(. .)) id=“pct”>
第一个
:匹配返回值
第二个*:匹配包结构
第三个*:匹配类名
第四个*:匹配方法名
(. .):匹配参数列表,两个点的含义是匹配任意的参数

三:编织:(weave 也称之为织入)
<aop:advisor advice- ref = “” pointcut-ref = “”>

猜你喜欢

转载自blog.csdn.net/weixin_42987508/article/details/83831202