00:00
好,那么上节课呢,说了一下咱们注解版A的使用,那么这节课呢,我们就来说一下A的原理。那么对于AOP的原理,我们核心呢,就是要从at enable兼auto入手研究其他的这些给容器中加组件,哎,我们都已经知道,而且呢,包括切面里面的这些通知注解,大家以前也都用过,而a op整个功能要起作用都是从这个注解入手的,要加了它才有a op,没加它也就没有了a op。所以呢,我们先来研究这个UN aspect兼auto这个注解,首先我们来看这个注解是什么,它是什么呢?我们来点进去来看一下,哎,我们发现在这个注解上有一个标注叫import,而import我们以前用过,就是给容器中导入咱们这个组件的,导入什么组件呢?导入一个它,我们把它写过来,它是呢?
01:10
还调用了import,调用它给容器中导入咱们这个UNSP接auto register,好这个类上有了报错,报错就是把这个好这个拿过来,那么呢,现在就是我们要导入这个组件,而这个组件又是什么呢?啊,我们点进去来看,我们发现呢,这个组件来看啊,它是一个叫import DeFinition register,哎,我们以前用过这是一个接口,这个接口呢,能定义给容器中,可以我们自定义的来注册给这个DeFinition里边自定义注册组件,以前呢,我们在我们这个二里边,诶我们使用M导入过普通件以及这些,我们也写过这个import select,我们实现这个接口的,包括呢,我们也演示了一个import register。
02:10
哎,我们也是实现这个接口的,在这个里边呢,我们可以给咱们这个RY里边来自定义注册一些比例,所以说呢,哎,我们发现那在这儿它就是呢,利用。利用SP auto register自定义给容器中注册咱们这个B,那注册了什么B呢?来,我们就给这个register,我们来打一个断点。我们以第八个模式来运行啊,我们这个LLP的测试好进来,进来以后呢,我们来看它现在给容器中注入了什么,首先第一个用YouTube register注册一个什么呢?叫SP接autoation auto creator if necessary,也就说注册一个这个组件,如果需要的情况下,那么呢,我们就来点进去看一看,好然后呢,它调用我们这个register接notation auto cator if necessary来再点进去,然后呢,Register或者呢注册或者升级一下咱们这个东西要注册一个什么呢?叫他传了一个类型叫SP接auto creator,我们再来点进去,我们来看这个方法,这个方法呢,传了一个类型叫。
03:42
Notation aware SP接autoxyator,然后呢,我们来看它在这呢做一下判断,如果容器中已经包含啊我们这个名字,而且呢,这个create的名叫internal autoy create,你在这呢,稍微记录一下有一个它,它对应的呢,我们还想注册一个叫ation aware and spent their auto。
04:15
哎,Proxy creator,好,如果容器中已经有了这个,并注册中已经有了它在这儿,哎做一系列工作,但是我们这个注册中应该还没有M第一次,所以呢,它来创建一个B的定义信息,就是a notation aware and SP接auto cre来在这定义一个定义,看走走,包括呢,哎它利用这个GRY把我们这个being的定义,哎,Being的定义就是要创建一个notation aware,这个reator,然后呢,它的这个being的名就叫这个internal auto creator,诶就是我们前面说的这个这个being定义信息,哎,它好,然后呢,注册在beinggry中,哎注册在我们这个G里边,那么呢,我们来看,那么第一步做完以后呢,相当于给容器中就注册了一个咱们这个B,然后的话呢,诶,他还。
05:16
做了什么工作呢?把哎SP接auto practice这个注解的内容信息拿来,拿来看,哎我们这个属性是不是处,如果是处,哎做一些工作再来看这个属性,如果是处是不是处,如果是处,哎又要暴露一些什么代理的这些宾应啊,我们这个后来我们可以再说,好,那我们这一步就说完了,就说第一步它是利用咱们这个a and spend auto里的auto给我们中注册一个。对,容器中,容器中注册一个叫an aware aspect接auto create,翻译过来就叫啊注解装配模式的,咱们这个aspect接切面自动代理创建器,比如说呢,这相当于是帮我们注册一个自动代理创建器,那这个创建器是什么呢?啊,我们来核心研究它,他给容器中注册了一个这个组件,那么注册的这个组件有什么功能,只要我们研究出来了,那么这个IOC啊,我们这个AOC的功能也就出来了,其他的研究也都一样,后来大家如果见到很多的enable什么什么什么,那我们就来看这个铸件有没有给容器中注册一些组件,如果注册组件了,这些组件的功能是什么?哎,这个功能只要我们研究透了,整个原理也就出来了。
06:54
啊,所有的原理就是看啊给容器中注册了什么组件,这个组件什么时候工作,包括呢,这个组件工作时候的功能是什么,只要把这个语研究透了,M原理就都清楚了,那我们来看这个组件a notation auto cre点过去来这个组件呢,哎,继承了很多很多,我们大概呢,先把整个组件的继承关系,我们来看一下它,哎,它的父类,它的父类你点进去是一个叫unabber,接adviser auto。
07:54
然后呢,我们来看这个副类还有没有负类,再点过去,我们来看它的副类叫an amct or auto create是它再来看它还有没有类点过去,我们一般都需要把这个关系来,我们整清楚,这有一个叫absruct auto create,抽象的自动代理创建起啊,都是些创建起,你看它还有没有负类点过去,哎,我们发现呢,它这个负类呢,有继承,哎,Proxy,什么processor support啊,又什么proxy conflict等等等等,但是呢,我们注意这它还实现了一个叫smart啊,Ination,咱们这aware being proxy,哎,Being post process,看啊,这有一个关键关键词叫being。
08:54
Post process就叫B的后置处理器,主要是这俩拿过来,这是它的这个负类。
09:07
我们把它拿过来,它实现了,哎,咱们这个叫哎smart aware being post process,有一个being的后置处理器,还实现了being aware接口,这个being aware,也就是说哎,它就是一个哎能调用set冰方,哎能把咱们这个冰工厂传进来的,那我们现在来看,既然有这个后置处理器,我们可以点一下这个后置处理器,你看它是这个,哎又是这个一层一层,哎反正无所谓,就是后置处理器,最终呢,我们就核心关注跟后置处理器有关的这些方法就行了,好,那么呢,它有实现后置处理器,还有咱们这个鼻音,所以说我们关注两点,关注咱们这个后置处理器,这个后置处理。
10:08
器的工作,所谓的后置处理器就是在并初始化啊完成前后做的事情,做事情,这是我们以前也说过这些后置处理器,那么呢,包括有一个冰方吹摩,要说呢,还要自动注入being音factor鼻音翻,那么下一节课呢,我们就来研究一下咱们这个notation aware auto们知道它是一个后置处理器,就来研究这个后置处理器最终都做了些什么东西。
我来说两句