00:00
OK,来继续啊,呃,下一个呢,我们来讲一下啊,我还是把这个方法拷贝一下吧,啊,我们讲一下有一个猝标签,好猝标签呃,先来写吧,啊写的时候我们再来给大家去分析啊,OK,把这个拿过来,拿到我们的映射文件中好呃,这个同样它是一个查询啊来把这个方法呢写到这好呃,最终的结果呢,我们写一个result tap,它就是我们的employee啊,我去拷贝一个去啊在这好放到这,呃,那么现在我想实现什么效果呢?就是你去查你的这个数据啊,Select ID,然后呢,Last_name email gender,好,From我们的TB employee,然后呢,V,后面大家听我讲,我现在只希望什么呀,就是你传给我的这个条件中呢,我会做一个挨个判断,比如说你有1234总共四个条件吧,好。
01:00
我会挨个做判断,假如说我判断第一个条件它是满足的,OK,我就直接拿上第一个条件去查了,后面的不管了,如果第一个不满足,我再尝试着判断第二个,如果第二个是满足的,行,那我也直接拿上第二个去查了,后面的我就不管了。也就意味着什么呢?这几个条件中,不管有几个你是能满足的,我只会使用其中的一个。明白这个效果了吗?OK,就有点类似于什么呀,有点似于我们Java中的那个Switch kiss吧,你猜想是不是啊,对吧,我去判断你的每一个分支嘛,只要你满足了一个分支以后,我是不是其他的就不执行了吧?当然哈,有个条件就是你必须要加嘛,如果你不加break break是不是会有一个那个穿透啊,对不对,OK,所以这个效果呢,就类似于那个啊,好吧,那我们就来写一下,那这个东西怎么做呢?我们在will后面呢,我们就需要使用一个choose了,在choose里面我们可以写问啊,问就是每个条件的一个判断。
02:03
好,比如说呢,我们以写出这么几个问来啊,好,最后呢,还可以写一个什么呀,After otherwise就相当于什么呢?你就怎么理解呢,你把这个when呢,就理解成我们的kiss理解吧,你把这个otherwise呢,就理解成default,还记得那个语法吧,OK kiss呢,就是每一个分支,而这个default呢,就是我们上面的都不满足的情况下,最终的一定要满足我们的。好,那我就来判断好,假如说你这个ID是不等于空的,行,那我就直接怎么着了,V,我就拿上ID等于井号大括号ID去查了,后面的东西我是不会去管的,如果说这个条件是不满足的,那我还要尝试着去使用什么呀?哎,使用下面的判断,比如说拉name,它也不等于空,OK,只要你不等于空,那我就可以使用拉,就下划线,Name等于井号大括号,哎,拉name这么去查就行了,能明白吧,同样的道理啊,再来写,比如说这个email它也不等于空,OK,这个位置我可以写什么呢?Email就等于井号打括号,哎,Email看到了吗?能理解吗?OK,就这么去写啊,好,最后的话呢,比如说,呃,假如说你上面这三个条件都不满足的话呢,那最后一个的话,我就必须要让你满足一个了哈,那我就查什么呀,我就直接查这个真边等于零的。
03:28
好吧,我就写死了啊,就不再不再判断了,明白吗?就上面的条件你都不满足的话了,你就直接去查真的等于零的就行了,如果说上面的这个条件只要有有一个是满足的,那么他一定会拿上满足的那个去查,好吧,来把这个说完以后,我们就来给大家做测试啊,我们来通过测试来看这个结果。好来,我把这个方法呢,嗯,再来拷贝上一次啊。好,这是我们的,OK,来吧,这个位置怎么写啊?
04:03
我们就要什么调方法了吧,map.get什么什么truth好把这个条件呢,还是给他传进去,然后呢,最后呢,返回一个集合类,好employee,然后em PS等于它OK,我们来简单把这个输出一下啊小吧,那现在你看一下我的这个四个条件是不是都有啊对不对,好那么四个条件都有的情况下,注意哈,现在我数据库里面,我们刚刚是不是改过呀,你看刷新一下这个数据,刚才改了没刚,但是我没提交是吧,刚才我是不是改的时候改了这个操作没提交吧,提交一下哈,来我们提交一下,然后重新执行一下,让他生效一下。好吧,诶让他生效一下啊,这就改了啊,改了以后呢,我们再来刷新一下啊,因为刚刚我忘了提交了,这就可以了吧,OK,生效了哈,好,那么现在的话,我们就拿上这个数据呢,再去查,你看一下这几个条件是不是都满足啊,对吧?那下面这个其实你不用看啊,因为我们真的是写死的,说这个它有没有无所谓的好,第一个条件满足的话,那么因为我们先判断的是ID,所以说呢,你现在选中去运行的时候,它其实诶直接就拿上什么了,拿上ID去查了,你看到没有,后面还有东西吗?没有了,好,假如说我的ID是不满足的,那我就是没有给你idd,不满足的话呢,那我就看一下你的last name满足不满足,他一判断是满足的,那么他拿的就是诶拉name去查的。
05:31
看一下后面是没有东西的,看到了吧,同样的道理啊,如果说你这个家伙也不满足,那我就看你的email满足不满足,如果他满足,那我就怎么着了,哎,使用这个email去查了。啊,你能看到这个结果吧,啊,那假如说啊,这三个都不满足,那行吧,那都不满足的情况下,那我直接查什么呀,查真的等于零的。我们来看一下是不是真的真真的等于零了,那么这种情况下的话,我们查回来的数据是不是就多个了?看明白了吧?哎,这就是一个choose when,它的一个用法。
06:05
它就类似于我们Java中给大家去讲过的一个Switch kiss这样的一个语法,听明白了吗?OK。
我来说两句