00:00
好,我们前面呢说了,使用configuration结合at being注解,我们给容器中来注册组件,以及configurationration的两种使用模式,For模式和let模式。当然我们给容器中注册组件呢,还有我们以前的办法也是可以的,比如我们给我们这这一类上标注at component代表它是一个组件,标注controller代表它是一个控制器,标注service代表它是一个业务逻辑组件,标注reporty代表这是一个数据库层组件,以前的这些东西呢也都能用,而且呢,默认只要我们这些组件写在我们包扫描的范围内,因为我们默认扫描的包就是com at硅谷boot,也就是我们主配置类这个主类里边的这个包,所以这个类呢,我们也一般称为主程序类,也称为主配置类,除除了我们这个主配置类能写配置外,因为我们也可以使用con r是不是自己在自定义一些配置类,这我们的主配置类,那接下来呢,我们这些东西我们就不说了,这个东西都是我们以前的。
01:01
动法,包括ant component sc这个东西呢,也就是我们通过包扫描指定包扫描规则的,我们以前也用过,然后我们来说另外一种给容器中添加组件,叫anport,就是我们给容器中导入一个组件,这个用法呢,用在哪?当我们只要写在任何一个配置类里边或者组件里边都行,我们按import这个注解呢,我们要写在一个容器中的组件的这个类上,你的这个类呢,可以是配置类,也可以是其他controltrler都行,反正呢,你只要在我们容器中的这些组件里边,这是容器中的组件,你看组件的这些类身上呢,你标了at import这个注解就行,那at import我们来说一下它,它的作用是干嘛?那我们一听这个意思,好,我们就标在这,一听这个意思就叫导入,我们点进来,我会发现呢,它是一个class的这个数组,就说呢,我们可以通过at import注解,我们给容器中导入非常多的这个组件,比如。
02:01
导入哪些呢?既然是一个数组,我就来写,如我可以给容器中导入我们自己有的,比如我自己的user类型的这个组件,我们也可以给容器中导入,比如一些第三方的,对吧,我们引过来的啊,这些第三方的这个炸包啊,炸包里边的,我们比如随便找一个炸包吧,比如log个啊,我们这个log back里边,我们来看哪个对象,我们把它直接放进来。好比如我们就叫这个什么DB helper,我们看能不能能不能把这个这个DB help help了,好我们把这个类型的东西呢,我们导进来,所以import就是我们将指定这个类型的组件导进去,然后呢,它的作用就是它可以自动的给容器中创建调用这两个组件的无参构造器,创建出我们指定的这些组件类型的对象放在容器中,Import,它以呢也是给容器中其中自动。创建出这这两个类型的组件,然后呢,我们可以来看一下我们的这个效果,我们容器中会不会有这两个组件,我们也同时在慢方法这里边验证一下。
03:12
好,那么这个验证呢,我们从容器中获取,获取组件,获取组件,那问题就是呢,我们在这个组件,我们给容器中放了非常多user类型的组件,那咋办呢?我要这么来写,我run一个get being get being呢,我们现在因为这个being可能有很多,我点一个get being DeFinition,我们来找一下啊,获取我们所有的这个being,我们获取所有这个类型的being,看一下,我们获取这些being的名字,我获取我们给容器中注册的user类型的这些组件的名字,然后呢,把他们的这些名字我们可以来打印一下。For each,好来set out,然后呢,另外好这个打印呢,我们给这添加上一些分隔符,我们以后就好查找了,这是我们给容器中导入的这个user类型的组件,而且呢,我们利用import还给容器中倒了一个DB helper,然后我们来看一下有没有它。
04:14
我们从容器中点get b,我们按照类型找DB helper。好点,一个plus,我看有没有这种类型的组件C4。Be,然后我们来启动一下我们的这个测试。那现在都在主方法里边来进行测试就行了。大家来稍等。好,我们来找这个分隔符以下的东西,那这个分布隔符以下呢,我们看到在我们容器中呢,呃,有一个组件的名叫com at硅谷being user,还有一个名叫USER01,为什么会有这个呢?USER01是我们使用at being方法添进去的,而另外一个组件名叫它的相当于全类名的是我们import导进去的,所以import导入的这个组件默认组件的名字,默认组件的名字就是我们这个,哎,我们来看一下啊,默认组件的我们获取的是什么?呃,Get b names,对,我们获取的是这种类型组件的名字,那默认我们这个组件的名字就是我们这个全类名,这是我们的组件的名字全类别。
05:25
好,然后呢,我们的DB helper,我们也获取到了,它给我们容器中创建了这个对象。
我来说两句