00:00
好,那我们下面咱们再继续往下看,哎,咱们的第五个标签叫什么,叫做for一起标签。叫做for each标签,这个for each标签呢,大家注意,然后它是非常重要的啊,然后比如说我们平常在实现一些批量操作的时候,我们都会通过我们的佛一起来实现。比如说批量添加和批量删除,所以说我会给大家来写两个案例,一个叫做批量添加,一个叫做批量删除啊,比如说呀,然后我们现在咱们先把咱们先写一个批量添加的功能,然后大家看它的返回值呢,是word的,然后咱们现在要来添加多个用户员工信息,咱们叫做insert more EP。好,既然要添加多个员工信息的话,大家说我们要添加一个,咱们就是不是就要用到一个员工对象,那我们现在咱们要添加多个,那我们在这儿是不是就需要有一个什么呀?是不是就需要有一个员工的数组,或者说是员工对象的集合都可以。
01:00
那我们现在咱们实现批量添加,那我们就用集合来给大家做,等到一会儿咱们在实现批量删除的时候,咱们来使用数组给大家做,OK吧。所以说在这儿呢,他的。参数应该是一个list的集合,然后它的泛型呢,然后应该是EP,好,然后这个咱们就叫做EPSOK,就这样去写啊,好,下面大家看好,咱们要实现的功能叫做批量添加,批量添加员工信息啊,员工信息OK啊。好,然后咱们把它呢,来进行一个复制,然后放在我们当前咱们的映射文件中,咱们就往下给它放到最后啊好在这大家来看啊,首先这是一个什么标签insert,标签ad,要跟方法名一致,然后咱们就设置这两个属性就行啊,这一个属性就行,当然如果说大家要有其他的需求,比如说我们现在要来获取的是什么,你要来获取的是这个啊,自动递增的ID,那这大家还记不记得,需要用到另外两个属性,一个叫use generated kids,还有一个keep property,对不对?哎,行,所以说大家把这些功能练完之后,不要不要忘了啊,好,然后下面呢,我们再来看,那怎么来实现批量添加,大家还记得不?Insert into t_T_emp然后咱们当前呢,是不是在这要写个values,大家注意啊,然后呢,这个一个小括号表示添加一条数据,如果说我们当前咱们。
02:37
面有多个小括号,然后中间用逗号分格,然后这个时候就可以来实现一个批量添加了,知道吧,这样的啊,好,然后呢,大家想想,那我们当前咱们集合里面的一个员工对象对应的是不是就是一条数据啊,那所以说我们现在是不是就要把这个集合间先循环,然后循环完之后,然后把咱们当前里面的每一个员工对象的信息,然后放在我们当前相对应的字段中来进行赋值,然后是不是就可以实现一个批量添加,对吧?所以说看好在这儿啊,咱们就需要循环了,怎么循环for标签。
03:15
里面有个connection属性,这个属性干什么的?大家注意,用来设置我们当前要循环的集合或数组的。你要循环的是谁呀?那不是这个当前咱们传输过来的参数吗?但是这个咱们好像没有讲过啊。但是这个咱们好像没有讲过,如果你传输过来的是一个list集合的参数,那咱们应该怎么去访问它呢?大家注意啊,你看在这里咱们是不是就得去思考这东西到底该如何去访问?所以说最简单的方法,你在这给它加上一个a per,你设置的Y6属性值是啥,你就得用什么来访问。所以说大家一定要看好啊,就是我为什么我这个推荐大家来使用a per,就是因为它简单对吧?你不设置的时候,你可能要想这东西该如何去获取,但是如果你加上a per之后,这东西你就不需要再去思考了,这直接就是这个注解的value流属性值就一定能访问到它,OK吧?那在这我也给大家介绍一下啊,如果说我们当前的参数是一个list的集合,那my be仍然会把它放在一个map集合里面,以什么为键,听好,以list为建,以当前的参数为值,所以说我们要想访问它,如果你只是这样去写的话,大家注意你这里面应该写什么,就写list,它就叫list。
04:38
MY再把它放在map集合里面的时候,它就叫list,知道吧,好,所以说啊,这东西咱们还得去记,你不知道的话,那咱们还得去试,对不对,因为买be体词会告诉你你应该用什么,对不对,好,所以说最简单的方法加上什么a per就叫emps就完事了。能看懂不?直接在这加上一个a per,这就完事了,你怎么访问它?那还不简单,你a per注解的value属性值是谁?你在这写的应该就是谁,能看懂吗?好啊。
05:12
所以说建议大家以后多用用这个a per注解,然后再往下大家看好,在这有个叫item,啥叫aem aem叫项的意思,叫做选项的意思,也就是说我们当前咱们是不是要循环的这个一效循环的数组或集合是不是这个emps呀?那我们现在用什么来表示当前集合或数组中的每一个数据呢?用这个item来设置啊,比如说这个EP来表示的就是数组或集合中的每一条数据。能看懂吧,好,然后再往下,这就完事了啊,然后下面大家说我们要干什么。大家都知道啊,这个佛是循环,那所以说我们当前咱们的这个标签里面的内容啊,它是会被循环的,也就是说我们这个标签里面内容你写的是什么,那咱们经过循环之后,它就会展示几次。
06:05
所以说在这咱们要循环的是谁?大家还记得不?咱们说了啊,这个批量添加一个小括号来表示添加一条数据,然后呢,再一个小括号又是一条数据,那所以说我们现在要循环的是谁呀?是不是应该就是咱们的小括号啊,对不对?然后把我们当前咱们的这个集合里面的每一个员工信息的各个属性,然后复制给它所对应的字段,然后咱们经过循环之后,大家说你的集合里面有几条数据,这小括号是不是就有几个呀?能听懂吧,好,OK,第一个ad自动递增,第二个员工姓名叫EP name能这样写,不能呢?大家注意,可千万不能这样去写啊,为什么?如果说我们用的是这种方式,那你想想,你大家想想咱们原来讲过获取参数值的那几种情况,你什么时候才能用这种方式呀?
07:00
是不是如果我们传输过来的是一个实体类对象的时候,你是不是才能这样去访问,通过属性来访问属性值对吧?好,然后所以说现在我们要来访问的是啥?你传过来的是个集合嘛,对吧?然后我们当前是不是应该访问的是集合中的每一条数据的员工姓名,所以说在这儿不是p name,而是emp.EP name,为啥呀?因为现在咱们的EP来表示的是集合中的每一个员工信息,OK吧,好啊,千万不要写错了,然后再往下井号大括号emp.AG然后再往下井号大括号emp.G。大家不要忘了,我们当前咱们的这个表里面还有一个字段我没有写出来,对吧,叫做部门ID,在这咱们直接设置为难什么意思,没有部门OK吧,好啊。行,那咱们把这个设置完成之后啊,这样对不对,大家想想你这for一起循环之后,那咱们当前是不是这是一个循环出来的结果,是不是一个小括号又一个小括号,又一个小括号,但是咱们说了批量添加的circle口,每一个小括号中间用什么要用逗号来分隔呀,那所以说咱们在这是必须要加上逗号啊对不对,那这逗号你在哪加,你说我在这儿加,大家注意行不行,不行,为啥你不能在这加呀,你在这加的话,那咱们循环之后,最后是不是就多了一个逗号。
08:29
对不对,那你能在这加吗?也不能,因为你在这加的话,那前面就多了一个逗号,所以说这个时候咱们就要用到其中的这个属性叫separate干啥的separate啊叫分隔符,就是我们当前咱们的每一次循环的数据之间的分隔符,用什么进行分隔,逗号进行分隔就可以了啊。好,这个大家一定要看好啊,就这样去写就可以。非常简单,但是咱们的for each标签以后用的那是相当的多。
09:02
就比如说批量添加对吧,大家注意就这个功能以后用的就比较多啊,为什么,你想想咱们以后咱们是不是表关系什么,一对多多对多对不对,特别是多对多多对多,咱们是不是要有一个中间表啊对不对?大家说你中间表里面你放的是什么,放的是咱们的两张主表之间的关系,比如说我们当前的一个用户和角色。用户,然后和角色啊,那用户和角色,一个用户对应多个角色对不对?那这个时候如果我现在为一个用户分配了角色之后,那你说你怎么办?我们往中间表里面添加的只有一条数据吗?不是呀,你中间表里面存的是用户的ID和角色的ID,然后比如说用户唯一的用ID唯一的用户他对应的角色是一,然后ID为一的用户对应的角色是二,ID为一对IID唯一的用户对应的角色还有一个三,OK,那你说你现在怎么做,我问大家你是不是就要把这三条数据是不是添加到我们的中间表里面,那你说这是啥?这不就是批量添加吗?
10:07
是不是呀,好,所以说大家注意这个功能以后用的还是非常多的啊。好,那下面呢,我们就来进行一个测试,大家看好,首先呢,然后咱们把这一疙瘩呢,给它复制过来,然后我们要实现的功能叫做test insert,然后more EP。然后我们当前呢,咱们是不是要来调用的方法呀,然后叫做map点,然后insert more EP里面咱们需要来获取的是一个员工的集合,好在这大家看好咱们怎么写啊,比如说咱们写个小名啊,然后复制。啊,这个性别咱们给他设置一个男。设置一个难OK啊行,然后来复制复制,就比如说这三个em mmp11MP2em mmp3,这小明一,小明二,小明三,OK吧,好,然后都是20,就这吧,然后呢,下面咱们要把这三个员工信息放在咱们的集合里,怎么写,你你要想写的快一点啊,就是A瑞,然后点as list,然后把EP1放进来,然后把P2放进来啊把EP2然后放进来,然后再把em mp3放进来,OK,这个时候他就可以直接来获取一个list的集合,能看懂吧,然后这个时候咱们把这个list的往这里面一放就完事了啊好,下面大家看好,我们现在来一个执行,大家看啊。
11:36
好,大家来看一下有问题吗?没有任何问题对不对,这是咱们循环的第一次,然后这是第二次循环的小括号,这是第三次循环的小括号,对不对?然后咱们添加进来的数据,大家看也没有问题,那下面咱们把咱们的circleq样给打开,我现在来一个刷新,大家看567小明一,小明二小明三对不对?然后下面二十二十二十哪哪哪没问题吧,好,这就是我们通过咱们的for each来实现的一个批量添加的功能。
12:07
非常的方便,以后用的也挺多,所以说希望大家下去一定要好好的去练习一下,把这个功能呢给掌握住,OK吧,好啊。
我来说两句