00:00
各位同学大家好,咱们继续往下来学习,刚才呢,我们完成了MP实现查询所有操作,包括添加操作,那下面给大家演示两个操作,第一个是MP实现修改操作,第二个是实现分页查询操作,那咱们首先先看修改操作。我在代码中给各位实现一下。那咱们来写一下。首先同样创建一个方法,这个方法才是第三个修改操作。然后在里边加上单元测试的方法,注意test这个依赖,别导错这个we。Update user。这是写的这么一个方法。然后写完之后在里边我们来试验这个操作,那怎么做呢?修改过程呢?各位同学可以想一下怎么进行修改,包括各位之前应该也都见过修改类似这个操作,首先咱的第一步修改是不是先查询做数据回写,然后再修改,最终改数据库中内容,所以咱们做的也是类似于准备过程,那我来写一下啊,首先第一步我们一般都是根据ID查询吧,所以第一步就是根据ID先查询出你的数据。
01:24
然后第二部分啊,就是设置要修改这个值,第三步调用方法实现最终的修改,这是咱们一个基本步骤,那咱来写一下啊,第一步根据ID查询,那咱调用user map中咱们找一个方法,大家看到里面的这个方法select ID里边传入你的ID值,那ID我到这里边咱们找一个刚才咱们加的ID,比如说第一个上一股F这个ID咱们拿过来。ID呢,因为它是一个类型,咱加上一个L,然后它里边返回的就是根据ID查出来的对象,这是它的第一步。
02:08
然后这个做到之后,第二步,咱像右侧里边来设置要改的值,比如现在我就把它的名称改一下,因为之前它叫上规谷阿,咱改成上硅谷这个上海。做个修改,这是我们的第二步,当然可以再改别的,我就以它为例,最后一步调用user map中的方法。咱们找这个方法,方法名字叫update,白地里边传入user,最终返回到跟之前一样,还是这个影响的行数,咱把影行行数,最终我做一个输出这个肉,所以现在修改操作我们就最终完成了,完成之后咱把代码执行一下,看一下最终的效果怎么样,就看这个修改最终能不能实现。我们是根据ID把名称改成上硅谷、上海,然后里边传入对象,对象中需要包含你这个ID址。
03:08
然后各位看啊,最终已经成功了,反值是一,然后大家看它底层的语句,首先第一个ID先查出来,数据查出来之后修改update传入要改的值,最终完成了,到表里边,咱们最后刷新看一下上回谷上海就完成修改,所以这时候我们演示了MP怎么实现修改。就是调里面的阿白地,最终实现这个方法,各位给他记住,这咱就完成,完成之后呢,我们再来看下一个操作,下一个什么操作叫做分页查询。我强调啊,分页查询是我们实际开发中一个很常见功能,而分页查询各位同学应该记得啊,在买杯子阶段,我们应该取到过扉页中呢,当时咱们用过一个插件叫配置hyper插件,这应该记得它是一个第三方插件,也是它不是买的自带的,而现在在MP里边它就自带的分页插件,咱们只需要做简单配置,用它规范代码就能现出分页,那下面给各位进一步演示分页查询该怎么去做。
04:22
那我来写一下啊,我在图里边给各位同学来画一下这个分页该怎么去做。MP实现分页。首先我们的第一部分你需要配置一个这个分页的这个插件,这个插件呢,我们可以在项目的启动类中配置,或者说建个配置类实现,咱们现在就创建一个配置类,然后进行这么一个操作。那我这里边写一下啊,首先你在群类中写没有问题,咱一般建议还是写一个配置类,那我现在在里边,我先建个包的名字,我就叫config,然后config里边我来建个类,类名字随便起,我就叫MP。
05:12
Config,然后在类上边加上一个注解,Config。代表它是一个配置类,然后在里边加上这个分页的一个插件,那咱们看一下啊,这插件长什么样子,不需要个位记,你用的时候呢,直接复制就可以了,我现在把这插件咱直接复制过来,然后把它的依赖给他引入进来。然后咱们看这插件啊,其实这个插件呢,是MP中自带这个插件,你看苞米豆买VI plus,然后插件其实就是new这个对象才能使用,然后你完对象之后加个艾特B在四中进行注册,所以现在插件就完成配置,这是我们的第一步。各位把这知道,就是它需要一个插件,当然这个插件配置你也可以放到启动类里边,我现在是放到这个配置那种,这是第一步,然后第二步呢,我们就按照它的规范的这种代码进行编写。
06:13
就是按照MP。规范的这个代码来编写分页。也就是说它有一个固定的一个写法,那我现在写下啊,咱们来到这个单元测试这个类里边加上下一个方法叫做分页查询。然后分页查询中,我们来创建一个方法test public,我就叫配置。咱们写一下啊,首先第一步,他要求咱们呢,先创建一个配置的这么一个对象,这是它的第一步。我写一下啊,创建配置对象。然后在里边呢,传递两个参数,就是你分页需要用到的两个参数,一个是你的当前页,还有一个是每页显示的记住数,比如说我当前第一页,当前第二页,每页显示三条,或者每页显示十条,把这个需要穿进去。
07:14
然后除完之后,我们到第二部分调用MP中的方法实现这个分页,那咱们把这个写一下啊,首先第一步我们来实现创建一个配置对象,在里边加上泛型user,我们起个名字叫配置,等于妞上一个配置。在里边传入两值,一个是当前页,一个是每月技术数,比如说我为了测试,我传个一,传个三一代表当前页,三代表每页显示技术数,这是它里面的第一步完成,完成之后第二部分调用user map中有方法叫select配置,注意啊,这里边有两个参数,第一个是咱刚才那个配置对象,第二个其实传个条件,比如你根据条件做分页,这条件咱后面会加上,目前咱先简单做个分页,那我把这个配置直接传进去。
08:16
然后这里边咱们先不加条件啊,直接完成这个过程。这个条件部分我先来一个,那先就做一个分页,然后分页之后,最后它会返回一个值,是一个叫配置这么一个对象啊,其实配置对象呢,你可以返回这么一个值。大家看这个啊,它叫做I配置。什么意思呢?咱看这个特点啊,你看啊,配置是个类,它是不是实现了这个interface,所以你可以反映它那个上层的interface都是可以的,比如咱起个名字叫这个配置model,这样的话就可以了,然后在配置model中有你分页中的所有数据啊,就是你可以这么写,完全可以,或者说还有一种写法,咱也可以直接这么来做。
09:01
大家看这个写法啊,我可以这么写。什么意思呢?就是现在你在调方法之后,他会给我们做件事情,把你分页之后的所有数据给咱们,都会封装到这个配置对换中,就你传个配置,里边最开始只有当前每个技入数,当你分页查询之后,这里边还有分页中的其他值,这么做也可以,两种方式都可以看你的习惯,有人可能习惯带反应纸的,有人习惯到里面直接用,总之结果都一样,咱看到。I配置是它上层那个interface啊,它就实现了一个interface,这么做都是对的,那我就写一种啊,咱就这么来做了,然后这个之后呢,咱们在配置里边呢,能得到它所有分页的一个数据。咱们看一下啊,里面有这么几个值,比如说第一个records,就是你每页的集合total总记录数多少条记录,配S总页数get size,每页显示多少条记录,Current就是你的当前页等等有个值。另外还有两只。
10:07
你看这两个啊,N还有这个,一个是是否有下页,一个是是否有上页,所以它里边都在配置中存在,就是分页的所有数据通过配置对象都可以取到,那这些值我就给它做过输出了,这句话啊,我直接复制一下。咱把里面这些值最终做输出啊,还少了一个那个集合,我单独写一下get。Records返回的是一个历史集合,咱们把历史集合我也直接做输出,所以现在这个分页的代码我们就完成了,这就是按照它规范的方式进行编写,得到里边的各个值。那得到之后,最后咱们把代码执行一下,看一下最终结果怎么样,我们来执行,咱们稍微等一会儿啊,等他出来。注意啊,各位写的时候这参数别忘记传,如果你不传的话,它是查全部,不能分页,当前页每就是数。
11:07
咱们看结果啊,首先第一条是我们那个集合,然后往下看啊,第二个是current当前页一总页数一页啊,因为咱们信托数据,因为它只有一页,然后你每页显示三条记录,一共有三条记录,另外咱看下两个啊。它是否有下页false,因为你只有一页,没有下页,是否有上页也是false,第一页的时候没有上页,所以现在咱这值都得到了,这就是MP实现分页这个过程咱们就最终实现出来了,然后过程中各位注意啊,这过程中别忘记配置分页的这个插件。包括咱也可以看一下它底层的色后语句。咱们来看啊,首先大家看第一个语句count是不是统计数量,然后下面做扉页,这个语句我们往下看,这里limit是不是M,就是my my with plus里边它生成的中在MYSO中做分页用limit。
12:10
这样的话咱这个就完成了,所以各位把这两个操作记住,一个是MP实现修改操作,第二个是MP实现分页的查询操作。
我来说两句