00:00
好,那我们刚才通过咱们的条件构造器呢,来测试了我们的删除功能,然后下面呢,我们就来测试一下咱们的修改功能,那我们要想来实现咱们的这个通过条件构造器来实现修改功能的话,那我们需要来访问的方法,大家来看啊。好,然后public VO叫做TEST04 OK,然后我们现在呢,咱们所需要来使用的方法叫user map.update方法,大家来看啊。好,那在这个方法里面一共有两个参数,首先第一个参数呢,然后是user,第二个参数呢,然后是weper,对吧?那我们当前为什么会有两个参数,其实很简单,因为对于我们的修改功能一共有两种用法,首先第一种用法的话,大家注意,那我们需要通过咱们的user这个实体类对象来设置我们要修改的内容,然后通过咱们的query wrapper,然后来实现我们要修改的条件。咱们的第二种用法的话,我们的第一个参数实体类对象可以设置为nulll,因为咱们说过,如果我们来使用update weper的话,我们既可以设置修改的条件,也可以来设置要修改的字段,所以说咱们的修改的方法一共有两种用法啊,那首先我们先来使用谁呀?先来使用我们当前咱们的这一个query wiper来实现一下咱们的修改功能,OK,大家注意这里面的两个参数。
01:27
分别是用来干什么的。第一个参数。用于填充,也就是来设置修改的内容。第二个参数用于设置修改的条件,比如说我们现在先设置条件叫做query wrapper,泛型是user OK,好,等于new一个query wrapper,然后再往下我们当前咱们的条件,咱们怎么来设置呢?比如说咱们这样来设置啊,咱们来找到咱们的笔记对吧?然后呢,把我们当前咱们的这个条件,然后把它给写上,大家来看我们现在要来修改的是谁,年龄大于20,并且用户名中包含有A,然后或者是邮箱为null的用户信息来进行修改,那这个时候我们该如何来实现呢?首先大家会发现咱们的这个条件和这个条件之间是并且,而我们的这两个条件和这个条件之间咱们用的是或,那下面咱们就来测试一下点年龄大于20,咱们说过用什么方法叫GT。大家注意,GT就是。
02:31
大于grant than的意思,那我们要来操作的字段是年龄,然后大于几,大于20 OK,然后再往下咱们的第二个条件的话,大家说那他们俩,那我们所设置的这两个条件之间用的是啥呀?是不是并且呀,那并且的话,我们在这需要用and的方法吗?我们之前用过按的方法吗?我们之前是没有用过按的方法的,就比如说我们的第一个。咱们的这个第一个测试,我们所设置的这些条件之间,大家来看是不是默认来使用的就是什么,就是and,大家还有印象吧,是不是好,那所以我们现在咱们需不需要手动的去设置调用咱们的and的方法呢?不需要,所以我们在这该怎么去写就怎么去写啊,好,所以我们下面用户名包含有A怎么写啊,模糊查询like,我们要操作的字段叫user下划线内,OK,然后我们要来模糊查询的这个值是A,好,再往下大家说我们还能继续点邮箱为nul,能直接is,那么能不能不能,因为咱们说过,如果我们现在直接这样继续去调用方法的话,那咱们的每一个条件中间,它用的都是什么,都是and,那所以说我们现在咱们要用到或或用什么用A方法,大家注意,咱们在这直接来调用一个or方法,然后再点之后,那我们上。
03:59
上边的这个条件和下边的条件之间就会使用or来进行连接,OK吧,好,那我们的下一个条件是什么?Is none,然后把我们的aal要操作的字段给放进来,好,然后这个queryper,大家说我们当前的这个东西是干嘛的?封装我们的修改条件的对不对?先把数据匹配到,然后再进行修改,那所以说我们当前的update方法里面就有了两个参数,一个参数是user,那user用来干嘛?我们现在既然能够通过条件构造去匹配到这些数据,那我们下面要做的大家想想是不是应该就是来修改字段了,对不对?那该怎么修改?我们之前在完成修改功能的时候,我们是不是都会来传输一个实体类对象,根据我们实体类对象中所设置的属性,以及属性的值来进行修改,所以说第一个参数大家注意干什么,其实就是来设置。我们当前要。
04:59
修改的字段的OK吧,把user给写出来,User user等于new一个user,比如说我们现在要把用户名给修改为小名,那我们只需要把user对象的username给设置为小名就可以,OK,好,比如说我们现在还要把它的邮箱set email,然后设置为test at it、硅谷点com OK,那咱们就这样去写,那这个时候我们在实体类对象中设置出来的这些属性,然后所对应的字段就会被修改为相对应的值,OK吧,然后那我们里面的第一个参数是user,咱们的第二个参数应该是per vaper OK,大家来看它的返回值是result,然后咱们把这个结果呢给它输出就可以啊,啊,那我们下面就可以来执行我们当前的这个方法,然后来看一下它最终的一个。
05:59
结果啊。
06:00
大家应该能想明白吧,对吧?然后我们当前咱们的两个参数,第一个参数的作用是用来设置要修改的内容,第二个参数的作用是来设置我们当前的一个条件,我们要将哪些数据来进行什么样的一个修改,OK吧,好,大家看没问题,已经执行成功了,对吧?然后受影响的行数是一,那说明咱们的条件是不是应该是匹配到了相对应的数据,大家看年龄大于20,然后用户名包含有A。然后大家看一下年龄大于22,就应该是我们刚才看到的这条数据,对吧,然后或者邮箱为空,那咱们这里面油箱有没有为空的,大家想一下,咱们来刷新一下,因为最后一条数据,咱们刚才。啊,咱们刚才呢,因为是逻辑删除,所以说没有删除掉对不对,好,那所以说大家来看,那我们现在我们能够匹配到的这些数据,是不是应该只有一条数据是符合规则的,就是咱们的这条数据,而且我们刚才刷新之后,我们最终的结果有没有成功,已经成功了,对不对,那我们再来看咱们的这个circle,大家来看啊。
07:09
Update表名,然后set,我们要把用户名进行修改,要把邮箱进行修改,为什么修改的是这两个?因为我们在user对象中我们只设置了这两个属性,其他的属性是不是都是默认的null,对不对?然后再往下,Where is deleted等于零,那既然我们做了逻辑删除,那我们能够修改的数据是不是应该也是未删除状态的数据,对不对?好,再往下按。然后and后边加的是我们所设置的条件,然后呢,大家来看一下这个条件是不是咱们的年龄的条件和我们的用户名模糊查询的条件之间,默认用的是and,而当我们用了or方法,然后所连接的email作为条件的时候,后边是不是就跟了一个O对不对?这个大家一定要注意,这个就是我们当前咱们要想来使用and该如何使用and的话,默认情况下咱们直接来调用方法,那我们的每个条件之间它就是暗的,而如果我们要想来使用or的话,大家直接来调用or方法,然后去拼接其他的条件就可以,OK吧,好啊,行,那这个是我们当前咱们的修改的第一种用法是使用咱们的query wrapper来实现修改功能,当然因为query weper,它只能来组装我们当前的查询条件,那当我们把数据把条件设置好之后,怎么来设置我们要修改的内容呢?就需要用。
08:38
通到咱们update方法中的什么第一个参数,也就是实体类对象来设置我们要修改的字段以及它所对应的值,OK吧,好啊。
我来说两句