00:00
然后下面咱做什么呢?我们就来实现啊,咱先做一个就是讲师的一个最基本的一个。分页功能,把这做到,然后做完分页功能之后,咱在分页基础之上再加上这么一个条件查询功能,啊,一会我会具体说咱该怎么去做,那我们先写一个最简单的分页功能。这分页功能咱当时在学那个买杯普中我应该讲到过啊,这里边跟他写法基本上是一样的,那咱来把这功能给它做到啊,做一个讲式的编译功能。那这功能我就在里边,咱们来具体写一下啊。咱让步骤来做啊,首先里边的第一步操作各位应该知道啊,咱们用买plus要做分页,那首先是不是要配一个买plus那个分页的是一个插件呀,只有你有插件之后分页效果才有啊,这是它第一步需要先配置一个插件。那这插件啊,我这里边有,我把它就复制,然后把它呢,放到我们那个就是。
01:04
配置类里边,因为咱们在配类中做咱们统一的这个配置。包括咱们上午配置的一个这个逻辑删除插件,现在咱们加上这么一个分页插件啊,这是它的第一步,这一步不能少,如果你没有这个步骤,那他那分页肯定是没有效果的。啊,这步给大家分过来啊,配置一个分页的这么一个插件。这是我们做的啊,第一步。然后这一步做到之后,下面我们再做第二步,第二步呢,咱就开始编写这个就是分页那个接口那个方法啊,就编写讲师。分页查询接口里边那个方法,把方法我们给他最终写出来,那咱就继续来写下这个方法,我就写到CTRL中啊,咱们有一个列表有一个。删除,那我下面写第三个,这个方法就是我们说的分页查询。
02:01
表示方法,然后这个方法啊,因为咱是查询嘛,最后来一个get提交啊,然后get提交里边我们给它起个名字,它叫分页查询,比如起个名字我就叫这个配置。Teacher啊,就是分页查询,下面写的方法叫public,然后后面写什么,刚才刚说过啊,因为咱们的方法,所有方法是不是都返回R,所以这里边要写的就是这个R。这是我们统一返回,然后给方法起个名字,比如说给他起一个叫配置list。这是咱们写的一个方法啊,那这方法我先准那个值,先不让他报错,然后咱再完善啊,先准的一个OK,这是分页方法,那分页方法要怎么做,给大家强调啊,咱在买地中学到过,咱做分页的话,首先。写一下啊,咱是不是要创建一个。配置对象啊,那我来创建一下啊,配置对象里边加上我们这个叫edu teacher,然后这个比如说我叫配置这个。
03:09
等于就是谬上这么一个配置啊,再加上这么一个。U一个配置对象,然后在配置对象中,之前咱们讲到过,它里边是不是要传两个参数,比如来一个一,来一个三,两个参数什么意思?一就代表是不是你的当前页,三代表什么。是不是就是每页的记录数,所以咱需要两个参数,那两个参数我们需要传递啊,那咱给他传一下,怎么传呢,咱就可以用。这种方式来传啊,这个我上午说过,它通过路径传递,那我在里边写一下啊,传这两个参数,直接大括号里边加上参数名字,比如第一个当前页,我就叫这个current。第二个每页记录数,我就叫这个利密的啊,这是咱们通过路径传值,也就是说在路径怎么什么叫路径传值,你在这后面,我们比如说传的第一个,然后传到第二个,第一个是你的当前页,第二个叫记录数啊,咱就是这么来传递啊,这叫路径传值,那我们写了两个值,然后写完之后,这个值咱要给它得到,怎么得到,上午说过啊,就是用这个路径。
04:20
Pass这个注解,然后把两只得到啊,那我写一下啊,两个值是一样的啊,加个pass,因为是页数嘛,那你就给他来一个long类型,比如第一个叫current。还有第二个值也是加这个注解,第二个值我们叫厘米的啊,这是当前页,这是每页记录数。我这里边啊,给大家加个注释啊。Current代表。当前页。然后里边这个叫厘米,它代表每页显示的。记住数啊,所以咱们把两值得到啊,你记住这个注解的写法啊,得到路径中那个值。
05:01
然后起完之后,咱们把两值给它传进来啊,这里边不写固定写你传那个值,这是第一个值是这个current。第二个值是这个利米啊,这个咱就传进来了,然后传完之后,咱下面就来调用方法做个分页啊,调用方法实现分页,那怎么调方法,因为咱们service已经注进来了啊,那我们来调一下service啊。在中呢有分页方法,因为咱在当时在map里边应该叫那个select配置,但是这个中它的名字换了一下,不叫赖的配置,咱看扉页叫什么啊。大家看这个方法。他就叫什么。又叫配置里边两个参数,第一个就是你那个new的那个配置对象,第二个加条件,咱暂时没有条件,我就写一个那啊这样的话分页可以做到,然后这个做的过程中,之前我也提到过,我再提一遍啊,在你就是调用方法的时候。
06:05
它的底层会咱们做这个封装怎么封装的,就会把你分页的所有数据都给你封装到你这个叫配置teacher对象里边去啊,在里边有咱分页所有数据,所以咱们通过配置把那数据就可以得到。啊,这个咱写方法,然后咱把数据得到一下啊,最终咱给做个返回就可以了啊这个返回呢,咱就参考我们写那个统一结果,那个数据那个效果啊,咱就参考。这个效果返回。大家看里边啊,咱数据中应该有两个,一个是total,就是你的总记录数,一个是Rose,就是你每页那个数据的历史集合,所以咱们现在也这么来做啊,那我就来写一下啊。首先配置T,咱先得到这个叫total,就是你一共有多少条记录,也就咱们经常说那个叫总记录数。
07:05
我写一下啊。总记录数,然后除了它之外,配置T中还有一个方法,它叫这个get records,返回的是一个第次集合,它就是我们那个每页数据的那个。历次集合啊,咱们把两只得到,然后得到之后,最后给它做个返回,怎么返回,我说一下啊,你注意啊,咱们第一个方法是不是加个date,但是你发现啊,Date里边这个date的那个结构。是不是一个麦克集合,所以咱们现在有两个值,那我们怎么做呢?说下它的写法啊,有两种写法,第一个写法我可以这个date给他写两字。就是说点两次date,比如说第一个date咱的名字,然后叫这个total,然后它的值是这个叫total,第二个date中写那个集合,比如这个集合我叫这个,呃,咱叫这个Rose啊,然后它的值叫这个。
08:04
Records啊,这是它的第一种写法,你这么做没有问题,因为它是map集合,或者说呢,咱也可以这么来写啊,我都写一遍,然后咱后边用一种方式,第二种怎么做呢?就是你可以啊在里边呢,创建一个map集合。比如我们现在一个叫。哈希map啊,建一个map集合。把这个啊,我们先创建。包先引入啊,然后创建之后呢,咱把数据放到那个map集合中,比如说在map集合里边,第一个K是这个total,它的值是total,然后第二个map.total它的key,比如我叫Rose,它的值叫records。然后做完之后,咱最后就是return r.OK点上data大家看啊,咱刚才用的第一个方法,咱可以用第二个方法,你把这map直接传进去,直接传个map,这么做也可以,两种效果都是一样的,看你怎么来写了,因为有人习惯这么写,有人习惯见个map啊,都可以,那我就用一种方式,这个我就住掉了啊,两种都可以啊。
09:14
现在这么做,咱把这个就是。分页的这么一个基本功能啊,我们就给它做到了,就是你注意啊,通过路径传当前页,每页记录数,然后传之后咱先溜对象,溜完对象之后把两参数传进去,这个不能少啊,你少的话它查出所有没有分页,然后这做到之后调四维中的方法,我们把这个分页查询,查完之后,在配置T中有分页中的所有数据,然后最后咱们把数据取到给它捋退返回。咱现在返回两个,一个total,一个records啊,你可以直接写两次date方法,或者说放到map机构中,两种写法都一样啊,怎么写都可以啊。现在我们就做到了啊,然后做到之后咱们把效果我们最终试一下啊,看一下结果。
10:06
啊,当然你在这个方法上边就是可以加上这么一个这么一个注解啊,让他就是有中文提示啊,我这就不加了啊,咱主要看效果就可以了,现在刷新。咱们点开我们刚才那个方法,就这个方法。然后这个方法大家注意啊,你看啊,这两部分是不是在路径后面,它就是路径传值,然后这个方法中两个参数咱写一下,比如说当前页我写一每页让它就显示啊,咱为了明显我就写两条记录,那现在我点一个叫try it out,咱们看结果。把握一点。然后大家看啊,反应结果咱仔细看啊,前面固定结构total是不是13爻,它有13条记录,然后Rose里边大家发现啊,显示的是不是两条记录,因为咱们让每页是不是显示两条记录,这样的话,这个就做到了啊,包括再看它的底层中这个circle语句。
11:06
用到就是一,这个叫limit啊,查出你的第一页,然后每页显示两条记录啊,这个我们就做到了啊,所以这是关于分页功能的一个最基本实现啊,这个咱们就把它快速完成了啊,所以这个过程各位知道啊,也就是说通过它各位把这种写法给它要特别熟练,或者给他适应过来,因为咱们以后如果你传这种值,这种传只的方式会经常这么来做,通过路径直接传递值,所以当前页那技术数啊,用这个注解给他得到。这个啊,我们就完成了啊。就是里边这个写法啊,同时也一样,然后这个写完之后,咱们后面要做的就是在这个分页基础之上,给大家加上一个叫条件查询,就是条件查询带分页。啊,这个咱们下一个来做到。
我来说两句