00:00
好,下面咱们就根据刚才我们明确的这个目标啊,咱们继续往下呢去探讨一下,那我们想要把买贝蒂斯和spring给他整合到一块儿。那么,我们需要做哪些事儿?哎,大家咱们来一块儿,咱们琢磨琢磨这个事儿啊。呃,我们说了核心目标呢,就是为了把din呢给装备进来,那那么我们这个时候呢,划分两头。那要想装配进来呢?装配进来的它一定是一个对象。他一定是个对象,哎object,哎,它一定是一个。对象装备进来的。那这个对象呢,它肯定得放到LC容器里边。哎,这个首先呢,它得有个对象,第二个呢,这个对象得把它放到LC容器里边,那这个对象是咋来的呢。能够去有这么个对象呢?
01:02
那么有对象呢,大家想哈,接口呢,其实你创建对象。你就算你强行的尿这个接口它也有个匿膜内部类。啊,得有有一个匿名内部类,所以说但凡是有对象,它一定是有一个类的。啊,这个对象一定是一个类创建的,但是我们写这个买威斯的接口,我们又没创建这个类。那这个类是哪来的呢?类啊,是MY动态创建的。哎,这里边呢,买贝蒂他去动态创建了一个类,那买贝蒂动态创建这个类,他不能呃胡乱的随心所欲的去创建,他一定得参考点啥,那么这个时候呢,它就得参考的就是像我们这个aderin map.x毛,哎,因为aderin map X毛里面有我们的S语句。
02:02
所以说你看他肯定my business参考这个明的这个搜里边思Q语句去动态的创建我们这个类,然后呢,拿这个类呢,再翻翻过来再去创建这个对象。哎,所以说这是这是这是这一套啊,这是一条线。那么我们说了,你有了这个对象以后呢?怎么把它放到这个LC容器里边呢?哎,那么我们LC容器里边吧,我们想一想,这个service注解标记的这个类是我们通过component sky啊包的自动扫描给加到LC容器里边的,那么我们买威动态类,诶,它创建的这个对象它也得接扫描进去,而这个扫描呢,我们用的是这么个东西叫做map scanner configu。诶,我们用的是这么个东西。去把这个。
03:00
哎,去把这个对象哈,给它加入到LC容器里边的,这是个扫描器,扫描器扫描的是谁呢?它扫描的是我们这个面map哈所在的包。诶,他去把我们呃的main map所在的包,我们用这个东西去扫描到LC容器里边,哎,他就在就放到LC容器里边了,然后这个东西我们这就可以去outwa,就可以去把它给装备进来了。这就是这个地方比较特殊啊,它用我们以前的扫描包那个东西,它就扫描不了了,以前你看我们用那个context泰克斯。Component。哎,以前我们用这个去扫描包,但是现在呢,你用这个东西扫描买贝蒂这个map的这个对象,你扫描不了,因为这个对象很特殊,它是买贝蒂给动态创建出来的,哎,买贝蒂底层呢,得做一些个特殊的处理,所以说呢,不能用这个去扫描啊,这个扫描没有用,你得用这个去扫描啊,得用这个去扫描,把它扫描扫描到LC容器里边。
04:16
那么有这些还不够?说。嗯,我得。我我MY呢,它要动态的,他要参考我们map的配置文件,Map s毛这个配置文件去动态的去创建我们这个类,哎,那么它得能够把我们这个S毛这个配置文件加载到我们的内存里边,或者说哎读取到我们的内存里边,那么这个时候是怎么读取进来的呢?哎,它是这样的。我们spring和买贝斯整合需要配置一个东西,叫做。诶,搜狗三病里边我们需要去配一个东西呢,叫做maps。
05:05
那么我们在这儿呢?这个map的配置文件所在的这个目录就是用我们这个map locations属性去指定的啊,哎,Map locations呢,是我们circle session family in的一个属性,要配置的一个属性,Circle session呢,除了这个map locations还需要配什么,还需要去装配我们的数据源。Data source。啊,Data source后边不写了,还需要去,呃,还可以去指定一个买全局的配置文件。就是我们买看点什么啊,但这个名字你可以叫别的名。还是可以去指定它,那么这个时候呢,我们spring跟整合以后,这个配置文件很多,绝大部分都可以拿到spring配置文件里边配了,所以这个里边呢,也不配什么,通常不配啥,所以这个东西我们想加就加,不想加就不加了。
06:01
哎,这是这样的话,这是一整套spring和买杯子整合的这一整套。哎,你这个你现在看这一套呢,现在这个有点乱。诶,没关系。我们下边刚才说的就是我们下边这个图啊,这个就相对看着相对这个整齐一点啊,哎,我们挺住哈,那么在这儿呢,我们再去捋一遍,哎,你看这个the map。哎,它真正装配的是代理对象啊,这是一个代理对象。代理对象是我们买去参考的这个配置文件啊,参考里边的这个后,然后呢。去创建的这个对象啊呃,那。那么接口这个类型其实呢,这个动态代,动态的代理对象并不是这个接口类型的真正的那个类型,对吧?哎,它一定是有一个类去实现这个接口的,这个类呢,是买贝动态生成的一个代理的一个类。
07:02
哎,那么我们这个map所在的这个接口是有map scanner configu给扫描到我们LC容器里边的。然后呢,Map的配置文件呢,是我们CIRCLEQL3FACTOR啊,去指定的这个位置,它还需要去装配我们数据源,数据源呢需要去读取我们这properties。所以说呢,其实我们从这边儿看啊。呃,这个区块里边,这属于这个框架他要做的事情,框架底层要做的,不需要我们去操心。啊,然后呢,我们要做的事情呢,是在这边。哎,我们在spring配置文件里边要配的就是这个啊,把serviceport加入到LC容器里边,然后呢。嗯,加out注解,这个我们需要去加扫描map接口所在的包,这个我们需要去扫描加载外部的属性文件。加载G,这个我们要去加载啊,读取,然后去创建数据源,这个也需要我们去配数据源。
08:04
配置配置数据,哎,指定member配置文件的这个位置,哎,指定这个member点的位置这些呢。是我们要做的。哎,这些是我们要做的啊,好像是个靴子似的啊,哎,所以说我们。呃,给大家说这个呢。说这些是为了啥?哎,是为了让大家哈,是说你在做我们后续的带着大家要做的这个操作的时候,你能够去感觉到每一个操作呢,是有目的的。每一个操作呢,都是有它对应的效果的。有的同学就是学完SM以后呢,就很困惑,这配置也太多了,我这个我记不住,哎关于这个问题呢,大家咱们从两方面来说,第一个呢,你不需要说特别精准的一个字母,一个字母都不带差的,全部都把它背下来,这个确实不需要。
09:03
但是呢,你需要能看得懂啊,这个配置文件你得能够看得懂,最起码你得能看懂个八九不离十,不需要你会写啊,不需要说你特别精准的一个字母一个字母的那样的把它写出来,但是你得能够这个能看懂。而你看懂的的。看懂的基础就是你得能知道每一个配置项,每一个操作,它背后的含义,它的用意,它能达到什么效果,这个是需要你去知道的。啊,所以说呢,你死记硬背这个步骤吧,这个还达不到这样一个效果啊,你得能够去理解,在这儿需要你去理解,我们给你大家咱们去明确这个目标,去分析这个思路,就是让大家去明明白去理解啊每个配置项它的含义,理解了这个配置项的这个含义才算真正的我们说哎,迈出了使学习使用框架的这个第一步。
我来说两句