00:00
各位同学大家好,在前面内容中呢,咱们完成了历的集合类型使用的注入,那下面呢,给大家来演示map集合属性类型的注入,那咱们下面这些来演示一下,为了各位看到更加明确,我在里边呢就重新建个包,咱们重新创建类给各位进行演示,那这里边我先建个包,这个包我起个名字就叫Di map。然后在包里边我们建两个类,一个是学生类,一个是老师类,就是一个学生有很多老师,然后咱们用map集合进行注入,然后写第一个类就是学生类。Co蛋,然后在学生类里边,咱就加上两个属性啊,当然你可以加更多属性,我就以两个为例,我们加第一个就叫SI,代表学生ID,然后第二个加上s name就是学生的名称。生成他们的get和set方法,把这两个都给它生出来,这时候我们写的什么学生类咱就完成,完成之后呢,下面我们再写一个老师类,我在里边做个创建,这个类咱们起个名字叫teacher。
01:13
然后在这里边也是加上两个属性,也是一个ID一个名称,那咱们给他快速写一下,第一个我就叫teacher ID。加到这里。Teacher ID,然后第二个咱们叫teacher名称,就是老师的名称,比如说张老师,李老师啊什么。各种老师啊,然后这里边生成它的get和set方法。单位套快速正常下。现在这个也完成了,然后完成之后这里边啊,为了咱们。后面测试方便,我在这个SM里边,咱们加上一个方法,或者后面我们进行输出,进行使用public,我就叫这个right啊这个方法。然后在里边我们就直接做输出,把里边那个sid,还有这个S内做输出,这里边啊特别写一下就是学生的编号。
02:12
是sid,然后后面有一个学生的名称,我们叫s name。加到这里。这是啊,我们加上了这么一个简单的输出,这个咱们就快速完成,然后完成之后我们继续来写,因为大家注意,比如现在我要进行这个map集合类型的注入,那咱们在student类里边加上一个map类型的属性,就是我刚才提到的一个学生会对应很多的老师,所以咱们用map集合类型进注入,因为map集合各位都清楚啊,它是一个key value6结构,所以K我们加上一个词,就加上一个teacher对象,然后给它起个名字就叫teacher map。
03:00
所以现在把这个map类型的属性咱们就创建了,创建之后同样生成它的get和set方法。所以现在完成完成之后呢,这里边咱把这个map集合给它,也是做一个输出啊,为了咱后面进行测试,方便输出一下这个teacher map,因为它里面有一个teacher对象,最后把teacher中那个给它也生成一下,为了一会儿咱输出能看到效果,或者说你把它变利也可以,我就直接做个输出了。所以现在这个最基本的准备工作我们就完成了,给各位明确啊,一个学生对应很多老师,然后我们用map集合注入他的多个老师,有key,有value y6是一个teacher类型的对象。这个完成完成之后呢,下面呢,咱们开始写它的配置文件,那这里边我来写一下啊,首先在resource里边,咱们建一个此配置文件,我给它起个名字就叫b Di map,点叉L把这文件我们进行创建。
04:09
然后创建之后在里边做我们的具体过程,那怎么做呢?咱之前应该写了很多了,这个过程我觉得各位同学应该比较清楚了啊,咱们把步骤写一下,首先第一步就是我现在你看到啊,是不是两个类student和teacher,所以第一步操作就是把这个两个类的对象我们先进行创建。两个对象咱用B标签进行配置,然后第二部分我们可以注入它的普通类型的属性,包括你学生里边两个普通类型属性,老师里边两个普类型属性,然后之后第三步,我们在这个学生的里边注入集合类型的属性,所以咱们做的就是这么一个基本步骤。
05:00
那下面呢,按照这个步骤,我们在里边咱们开始进行配置。首先第一部分咱们先把两个对象先进行创建,就是一个老师,一个学生,那这里面我来快速写一下,第一个我们先创建这个老师,这个对象,把他的类路径咱们给他拿过来。点上teacher。然后给它起个名字,我们叫teacher,这是第一个对象的配置,然后第二个呢,我们再配置一个,就是学生的这个对象,因为跟他类似,我把它复制,咱们快速改一下,这里边加上这个。然后咱们给它起个名字就叫student,所以这就是第一步操作,咱们配置了两个对象,然后配置对象之后,我们的下一个操作在里边注入普通类型的属性,把这个咱们进行这么一个注入,那这里边我来注意一下啊,首先看这个讲师里边,它的第一个叫讲师的ID。
06:00
我在里边注入,比如说讲师ID,咱们起个就叫100啊,直接写一个,然后第二个它的名称name。我写一下歪了,比如说这个讲师啊,他是这个叫西门讲师。啊,随便写了一个名字啊,新闻讲师,然后现在你看啊,在teacher里边我们就完成了对象创建和两个使用注入,下面我们再写这个学生。学生里面同样注入普通类型的属性,跟上面一样,咱们快速写一下啊,第一个学生的编号我们加上,比如这个学生编号咱们叫这个就是,呃,比如我叫这个。2000啊,就是比它多一位啊,因为这是100,咱为了区分啊,交这个值,随便写的一个值啊,就表示它的编号或者它的那个学号,然后第二个学生的名称s name加上一个名称,比如这个学生啊,他叫这个张三。
07:00
现在把这个基本的这个注入就完成了,完成之后呢,下面我们继续来做啊,下面做什么呢?大家看,因为学生里边是不是有一个map集合类型的属性,所以在下面完成这个注入,就是在学生的B里边注入map集合类型的属性,咱们看这个该怎么去写,跟之前写法应该说差不多,那这里边我来写一下啊,Poverty加上teacher map同样啊,这里肯定不是写,因为它里可能有多个,所以咱们怎么做呢?给大家写一下啊,在这个里边有一个map,你看啊,这标签很明确,Map就代表你的map集合,然后在map里边我们怎么来做呢?我们写一下啊,首先第一个有一个叫entry。Entry里边呢,有一个标签叫K,就是指定你map中的K的值,这个值我就写固定了,比如我写一个什么100啊,幺零咱就写一个值,然后再加上它的Y6啊,这里面Y6,但是我现在这个Y6啊,它不是普通一个值,它是不是一个对象啊,所以咱把对象给他加过来,怎么加这里写一下啊,你在这里边呢,加上就是这么一个部分,哎,不是写,还是这个安里边啊,加上这么一部分叫re。
08:23
然后加上一个叫B,指定咱们那个teacher这个B把它进行引入,所以现在把这部分我们就完成了啊,通过它做一个实啊,但是key应该不还不能这么写啊,咱在里边应该是还是加上一个value。就是指定你的key的值是什么啊,这是它一个写法,我再重复一遍啊,咱们现在要在student里边注入map集合类型的属性,那怎么做呢?指定它的属性名称,就对应你的get set的方法这个名字啊,这个叫teacher map,然后进去之后在里面加上map标签,然后里边有安垂,安垂里边第一部分是它的key的值,第二部分是它的Y6值啊,就是有K有Y6,但是Y6中特别强调啊,因为咱们目前的Y6并不是普通的一个值,如果说你是普通值,那你可以这么做啊,通过Y6设置咱们的Y6是不是一个对象。
09:20
所以对象写的话,我用ref引入咱们这个的对象,把它就进行引入,这是咱们的这么一个写法,当然我这个一个学生中可能有多个讲师,那比如说我在里边啊,我再配置一个讲师,这个讲师我就叫teacher啊,比如这个我叫teacher,这个咱叫teacher to就两个讲师,你可以更多啊,然后这个200。这个不叫西门讲师了,叫这个上官讲师,然后在里边我们做配置,第一个teacher。然后同样的写法,咱再来一个teacher to跟这个写法一样啊,我就再写一遍entry。
10:02
加上里边的一个叫K。K里边呢,有一个Y6 Y6中只有你的,比如我叫100,呃,八六啊,就随便写个K的名字,下面加上它的Y6REFB,这里边用这个就是teacher to。用这个进行实现啊。这个写一下啊,写错位置应该在下面啊,在这个里边ref b里边加上teacher to。所以现在这个我们就完成了,在一个学生里边,我们注入了map集合,然后map集合里有两个值,这是第一个部分,这是第二个部分,单以后有更多,现在啊,咱们就讲到这里,这就是如何注入map集合类型的属性,咱们就演示完成了,重点就是在这个位置。然后这个之后下面呢,咱们进行最终的测试,我们来测试一下啊,我先创建一个类。
11:01
泰斯特。我就简写了sto,然后在里边呢写上这么一个方法,咱们完成最终的测试。就叫test stu。单写下啊,加上applicationtest等于上一个加上配置文件的名称,我的配置文件是这个,注意名字不要写错啊,我这里写一下。就是B。第。Map点叉L。现在这步完成。完成之后下面呢,咱们得到我们这个对象啊,就是里边这个看一下啊,它这个名字,我们就要把这个给他得到。加上它的类型s.class最终返回这个S对象,这个得到这个对象,然后得到对象之后,下面呢,我们给它做一个输出,就是调用里边刚才我们写了一个方法,咱给它调一下啊,S里边有一个方法,在run方法中,咱刚才写到了,大家再看一遍啊,我们在方法中第一部分把我注入到学生编号,学生名称输出了,第二部分把这个注入到map类型,属性也输入了,Map类型中有key,有Y6 Y6是一个teacher对象,我在teacher里边把它to缀也生成了,所以一会儿应该会有输出,这是咱们一个基本的测试方法。
12:38
那最后执行看一下效果,看看它最终是怎么样的,就看一下map集合类型属性最终能不能完成注入。然后大家来看啊这个特点。首先这是基本属性,各位看这个地方啊,这是第一个map,这个是K,然后这个是Y6,然后这个是第二个这个1086是K,这是他的啊,包括你看什么上官讲师,七门讲师,咱们是不是就完成了注入。
13:07
所以以上啊,就是咱们演示的map集合类型使用的注入,大家把这个配置文件这部分自己好好去写一下,这个咱们就演示到这里。
我来说两句