00:00
各位,在刚才内容中的,我们演示了基于叉L方式做B管理操作,咱分别演示了外部B,内部B,还有接连赋值,那下面呢,我们继续往下来演示,那咱下面要演示什么呢?我们来看一下,基于我们之前演示的,咱们在里边我们可以注入,比如说有字符串类型属性,包括有对象类型属性,然后咱们下面演示在里边基于插播方式注入集合类型属性,比如现在我们可以注意一个数组形式,一个list集合,一个set集合,包括map集合,那这个我们该怎么做?所以下面给各位来做演示,通过叉L方式注入集合类型属性,那咱下面我们来具体写一下。首先第一个给各位先演示,我们先注入。就是一个数组类型的属性,这个一会儿我先演示,然后演示之后第二部分给大家演示,注入一个叫list。
01:06
集合类型的属性。包括这个演之后第三部分咱来演示,注意一个map集合类型的属性,咱们把这几个给各位。演示出来,那咱下面把这内容我们就具体看一下,首先再看第一个,注意一个数组类型属性,咱看这个写法我们该怎么做,但是各位注意啊,不管你是注入数组类型,还是list集合,还是外集合,他们应该都有一个共同的特点。我觉得各位应该能想到,数组集合里边是不是都能放多个值,这是它们一个特点,就是数组里边可以有多个值,例次集合、外部集合中都可以有多值,所以咱们现在把这效果我们来做演示,那咱们看怎么做,咱直接讲这个代码,首先这里边为了明显,我把这项目咱们再重新复制一份,咱们到一个新的项目中来写我们这个具体操作。
02:10
因为之前里边写了很多内容,现在我把它复制一下。然后给它改个名字,我们就叫这个DEMO2。把这个先给他复制一下。然后复制之后,我通过这个工具。咱们把我刚才复制那个项目给它打开,就是在我这个E盘的work中有一个DEMO2,就是它把这个打开在当前窗口,然后咱们在一个新的一个里边来完成我们这个操作,那这个名字改一下。因为咱之前是从里边复制过来的,然后给他做这么一个修改。把它改成我们这个5DEMO2。现在把这个我们就做了一个复制,然后复制之后呢,在里边咱来实现我们新的这个内容,我先把它里边其他的部分先给它删掉,咱们现在重新来写啊,先把那个结构删掉,包括里边这些也要都给它删掉。
03:17
咱就保留一个最基本的配置文件,这三个也都删掉,就保留一个,然后在这里边完成我们这个内容啊,变成一个项目的一个准备,然后准备之后呢,咱首先我们在里边建一个包,这里边就完成我们的注入集合类型属性,那我给包起个名字,比如叫这个collection type。这个啊是一个集合类型,然后在里边呢,比如现在我在这个位置,我们可以创建它的一些相关内容啊,那咱们来具体写一下啊。我们在里边呢,咱们先创建一个类,在里边完成我们的集合类型使用注入,那这类,比如我起个名字,假如类的名字我就叫这个。
04:08
就叫s to,这是一个普通的类,然后在类里边呢,我们现在因为咱做法要注属性,所以首先第一个我先写上这么一个,就是数组类型的属性,把这个再给它写上,那我在里边完成我来一个private string类型,然后加个数组,比如这个数组一个学生嘛,他可能要学很多门课,所以这个数组我就来一个叫。Co就是他学的课程,这样的话把这个创建,然后创建之后我们生成它对应的那个方法,因为咱们也是通过set方法完成这么一个注入,这个啊是我们一个实体类的这么一个编写,然后编写之后咱下面在我们的配置文件中来完成这个配置,就是把sto的对象创建,然后把这个数组的值,我们最终给它做一个注入,咱就完成这个内容。
05:07
但因为咱们一会儿还有这个例子集合,包括map集合,最后把这三个咱都统一写完,然后最终做个完整测试,因为它的做法都差不多,这是一个数组类型,那比如说我现在啊,里边再来一个类型,咱就创建一个list集合类型的属性,我们写一个,我来一个private list的集合里边为了方便我也来一个损类型,然后这个名字比如就叫这个。List。这个啊,是一个集合类型的属性,然后有它之外,咱们最后再写一个map类型的属性。Map我写一下啊,比如说第三个我们来创建一个map集合类型的属性,那我来一个private map,因为map嘛是一个key value的一个结构,所以我们来一个key value。
06:04
我都给它写成RI,然后这个名字我就叫maps。所以这样的话,咱们现在把三个最基本的属性我们就写出来了,然后写完之后,同样把它对应的set方法我们都给它生成出来。就是里边这个list的,还有map的在的方法再给它生成,所以这样的话,把三个基本的类型就定出来了,包括数组类型,例集合,还有mapb集合啊,当然里边也可以有一个set集合,我把这个也做个定义。就是定义一个set集合类型的属性。那我来一个private,我叫。然后里边也加上一个street,比如叫这个size。啊,这样的话,咱现在这些应该都完成了,这是我们做的一个。
07:01
类的一个编写啊,各位把这个能给他快速做到啊,这应该没有什么难点,就是一个基本的结构,然后这个写完之后,咱下面核心肯定是在配置文件中完成里边这个用的配置,那咱下面来做一个具体配置,就写它的配置文件。我写一下第一步咱就创建一个这个类,然后类里边定义我们的这个数组类型。包括list集合、map集合,还有这个set集合类型的这些属性,并且生成它们对应的。在的方法,这是我们写的第一部分,然后这个写完之后,咱的第二部分,我们就是在这个的配置文件中进行对应的这个配置,就是注入这些集合类行属性,那咱下面把这个我们就具体给它配置一下,再来写一下,因为现在用的都是S方法注路,那我在B1里边,因为它里面有之前的其他内容,我把其他内容先给它去掉,咱们写我们这些内容。
08:09
在里边就完成这个。集合。类型属性的注入,那怎么做,我觉得各位同学应该知道啊,首先第一部分。这对象是不是要创建呀,然后创建之后在里边用那个poverty这个属,就是标签里边加上你的属性名字和你的值,是完成一个注入,那咱们这么来做,第一部分我来一个。并标签里边有个ID。包括有一个class,咱先把它的对象创建,先配出来,然后这个名字我叫sto,它的路径com点。At硅谷点五,点上collection type,点上这个STU,这样的话完成对象创建,然后对象创建之后在里边再来完成属性注入。
09:04
首先第一个咱先写这个叫数组。类型的使用注入,那怎么做?结构跟之前一样,Property里边来一个叫Co,因为这是一个数组。当然各位注意啊,咱之前写法呢,是来个Y6,各位看到你用Y6的话呢,确实可以注入值,但是Y6写法大家会发现这么写里边是不是只能写一个值,你不能写多个值,因为它里边只是一个值,而现在不管我是数组集合里边都有多个值,所以咱现在就不能这么做了,那怎么做呢?给各位写一下,如果说你要注入数组类型的值,那在这里边加一个就是这么一个。相关的标签,这标签是什么呢?就是你可以写一个list的是可以的,另外可以写这个叫A瑞,它都可以啊,就是用list或者A瑞都支持数组类型注入,因为这个list在里边也能用,比如说我们写一个A瑞,然后里边来个Y0,因为它有多个值,所以你加多个Y流标签里边可以设它的值,比如现在我这个代表一个课程,假如说这个课程咱就写多个,我就以两为例,比如说一门课这个。
10:23
Java课程第二门课数据库课程,这样的话就完成了数组类型数注入,你用这个额标签,或者说用个list标签都可以,这各位知道应该很简单,然后第二部分咱来完成这个list。集合类型省注入跟上面就一样的,咱来一个property,然后这名字叫list。在里边我们写个list标签,然后里边也是加上Y6 Y6中你可以也可以写多个值,比如说我们写两值,假如现在这例子中,比如咱们随便写两个,假如这个啊,比如说我写的有点之一啊,假如例子呢,代表我这个学生的这个名称,比如它里边有他的那个大名,有他的别名等等啊,比如他的名称,比如他的大名叫。
11:16
张三,然后他有一个小名给他,小名叫这个就是。小三啊,这个啊,是咱们写的类类型属性注入,他就这么来做,然后除了这个之外,咱还有一个叫map类型属注入,然后把这个咱来写一下。Map类型。那在这个位置呢,我加上一个叫property,加一个叫maps。当然各位注意啊,Map类型,因为map的特点是不是叫KY6这么一个结构,所以在里边再来一个标签。什么标签叫map?然后map里边呢,加上这么一个结构,这个叫entry,注意是entry啊,Entry里边有两个属性,一个叫K,一个叫Y6,就表示是它的K和Y6的值,这个啊是它的两部分,那这里边我写一下,比如现在我这里边这么做,假如我这个学生嘛,它里边就是课程。
12:18
这里边我写成大写,然后Y6中我写成它的小写,比如这个叫PP。然后小写就是。PP这样的话完成它的K和Y领这么一个设置。这个是map集合注入,然后除了map之外,咱最后还有一个叫set集合,在在里边也做注入,跟之前都类似的,我们来一个property加个size。然后在里边写什么呢?大家看啊,有一个标签叫set标签。然后S的标签中也是有这个Y,所以你会发现啊,写法都差不多,就通过这些能完成里面这个结构,比如里边我就随便啊写两个值,假如第一个我们写这个买circle。
13:08
然后第二个就是写这个。所以这样的话呢,大家看我们通过这段配置就完成了,集合类型数注入,它包含这个数组类型,包含list集合,包含map集合,还有里边这个set集合,这里边都可以注入多个值,咱现在把这配置我们就完成了。所以各位把这个写法给它记住并不复杂,主要是用到里边这个结构,通过set方法注入。然后里边用到不同标签来注入你的不同类型的属性,比如你数度用A瑞,List集合就是list map集合用map和ENT,然后set集合用set标签,这样的话把这部分我们就写出来了,这是关于它的这么一个注入集合类型输入属性的注入。
14:02
这个写出来吧,然后写完之后呢,咱们最后来做个测试,我就在这个sto这类中,咱们写一个测试方法,为了咱们一会儿有这值的输出就可以了,那我把这值我就都输出一下,这是第一个是这个数组。我强调啊,数组如果你直接输出它不是值,咱们把这值输出一下,那我们加上一个工具类,叫这个瑞点。To string加这个cos,把它作为字符串输出,然后里边有第二个就这个例,咱就直接输出了,然后里边还有第三个是这个map。还有最后一个是那个赛。这样的话,咱现在把几个值,我在这方法中做出输出,然后都输之后,最后我们写一个测试类测试一下啊,我在里边先来个包。那这个啊,包我写一下。
15:01
用这个啊,咱复制一下。比如这个包,我在这个位置,咱们做个创建,我就叫这个啊,就叫test。DEMO。这个啊,然后在里边呢,我加上一个测试类,我就叫test。THREE5。这个。一。然后在测试类中,咱们写一个测试方法,把这个测试一下public we啊,这个我就叫test collection。然后在里边解结构,按照咱们之前讲到的,第一步肯定是加载配置文件,创建对象,我们来一个application contest contest等于new上一个class pass,里边加上你配置文件的路径名称,咱是B一点。叉L,这是第一部分,然后加上之后我们用context.get b得到你的对象,咱的对象名字,这里我起的ID叫STU。
16:10
然后咱们加上它的类型,就是点class,最终返回我们这个sto的这么一个结构啊,就是sto。把这个写出来,然后这个。依赖加上,加上之后调用sto里边的test方法,咱们都输出,就看一下我们这几个值能不能完成这个注入,那咱现在把这个执行一下,咱看一下最终的结果是怎么样的,我们来试一下啊。咱们等他先平出来。然后各位看,现在值应该输出了,第一个就是数组,第二个是粒子集合,第三个map就是KY表,第四个是set集合,这样的话咱把这个结构我们就完成了,这是关于如何来注入这个集合类型属性的这么一个写法。
17:06
这个啊,各位给他知道啊。所以咱们完成了这么一个做法。然后这个完成之后呢,大家看啊,咱们现在把这结构已经做到了,然后下面咱再说一下,我们注入集合类型使用中一些细节问题,咱主要讲两个细节,我先说一下什么细节,然后咱们马上来演示啊,首先大家看第一个细节。你注意啊。我刚才呢,在集合里边,不管你是数组list还是map,还是set里边我放的类型是不是都是一个字符串。我是不是都是放了字符串,就如现在这么放没有错,比如现在我想做件事情,我就以例子为例,其他都一样,比现在我想在例子里边的不放字符串,想放个对象,比如里边放一个user对象,那这个该怎么做?咱一会儿说这个第一个细节。
18:02
然后里边还有第二个细节,第二个是什么呢?大家看啊,比如我现在在sto里边,我放了一个粒子集合在这么注入,但我这么放的话,它是不是只能在我的sto中进行使用了,我在别的对象中这个肯定不能用,那我现在比如说一个场景,在不同事业类中的他们用的集合都是一样的,那我现在就可以把这个集合部分给它提取出来,给它做成这种公共部分,让所有事一类中都能引入到这个集合,所以咱们第二部分可以把它集合做个抽取,给它做成一个公共部分,因为目前做法只有这里边能用,就是在这B内部能用,别的地方用不到,咱可的抽取出来做个公共的一个抽取,所以这是我们要说的两个系列问题。这个咱们马上演示啊,就是现在咱是把这个基本的输入方式说完了,数组历次集合,Map部集合再次集合,各位把这部分先给他掌握。
我来说两句