00:00
接下来那么我们要对查询出来的这个列表啊进行一个排序,排序怎么说同学们。Order by,我们现在按照什么进行排序呢?一般来讲我们是不是都应该按照这个创建时间来排序啊,哎,这个按照创建时间排序,我们有没有创建时间这个字段呢?有吧,来看看同学们啊,这个我先给关了,打开CRM啊。来看看咱们是不是有这个创建时间代码有啊好,那么我们应该按照这个创建时间。升序排还是降序排?也就是说,对于市场活动而言,应该是越新的越往上排,还是越新的越往下排?又往上排,那应该是个什么?
01:01
那什么呀?C,那升序叫什么来着?Asc也可以不填,是这样吗?好,那大家想一想啊,在我们未来实际项目开发当中,至于排序,基本上是不是都应该是降序排呢?比如说你录入的消息或者是新闻。是不是应该按照这个日期,按照这个时间来算的话,这个时间越大,说明这个录入的越晚,越应该往上排,越新的新闻应该越往上排啊。没错吧,那比如说产品呢,比如说咱们录手机是不是越晚录入产品,就相当于这个产品是越新的,越新款的应该越往上排,是这样吧,基本上都是这样,但是也有特殊情况啊,是什么呢?应该往下排。什么与与与人相关?什么意思?比如说啊,你一个国有企业,我就假设啊,你一个国有企业,比如说啊,咱们是不是肯定得有这个员工,或者是你们所熟悉的叫雇员表啊,员工表对不对,你想想这个员工表啊,比如说排在第一位的啊,是张三30年的老员工。
02:18
什么五一劳动奖章,三八红旗手,为公司做过了无数的贡献,人能排在第一位。是这样吗?啊,第二位是李四25年的老员工,哎,你刚进场。你要按降序来讲的话,你不是就排在第一位了,你来的越晚,你是不是时间就越大呀,对不对?诶,你排第一位了,把张三挤到第二位,你说咱中国永远是个什么呢?人情社会是这样吧?哎,你应该论资排辈吧,你应该往下排,再比如啊,啊,你当个公务员,人家局长排第一位,副局排第二位,处长第三位,副处第四位,对吧,科长第五位,科员第六位,你刚进来,你排第一位,局长挤到了第二位,那不可能,对不对?所以说类似于这种情况就两种排序啊,一种是什么呢?应该是按照省序排,时间越大的说明越是新来的员工要往后排,能理解吧。还有一种是什么呢?我们可以给他设置,以设置排序号的形式来排,能理解吧?啊,也就是说啊,谁排第几位?
03:19
以后会有这种需求啊,C排第一位,我们设置这个序号能理解吧,按照这个序号来排,专门有一个字段啊,是用来处理排序的,OK吧,好,那最后啊,就是咱们这个分页的啊,分页叫什么。Me,那太简单了,同学们最后两餐,一个skip count,一个page,图往上一安就行了。SK count,然后是什么,这个叫。Set page set OK吧,行,这是一个啊,那接下来咱们来取这个总条数啊,其实从这个条件的部分来看,跟我们刚才写的是一模一样的啊。
04:14
Select这回咱们比如说反一个in行吧,条数多了你就反啊,OK吧,Select这回咱们查的是什么,同学们。是不是调试出count型啊,对吧?好,Count型from表join user,为什么要join user呢?因为我们下边之后查询条件用到user。对吧,好,那下面整体粘一下就行了啊,查询条数咱们不需要排序,也不需要分页,是这样吗?直接一粘就行了啊搞定行,我们现在啊来看看最终所呈现的这个效果,我们来看看这个activity这张表啊,这张表里边咱们正好有两条记录,百度推广和发传单一对不对,看看啊这两条啊,能不能给它列出来。
05:30
好四场活动来看了啊,走一个有没有?啊,来看一看同学们,这回这个记录是不是我从数据库表中查出来的?行,我看看啊。咱找一找。这个是不是相当于是我刚才的这个消息对吧?好,从响应结果来看,我们来看看啊,一个total total是总条数是两条啊,Data list查询出来两条,一条是这个百度推广,另一条是这个发传单一是这样吗?好,那最终给我们呈现出来的这个接身串,同学们看一看,是不是就是我们想要的这个接身串。
06:20
那total等于什么什么data list后边是一个接身数组,这个接身数组的每一个接身都是每一条市场活动的对象,没问题吧?OK啊,没有任何问题啊,行这个列表啊,咱们铺上了,那么铺上了之后呢,我们开始做这个分页啊,那么值得一提的是呢,咱们这个分页啊,其实在市面上这个插件有很多。它不仅仅只是依赖于咱们非得是做一个前端UI框架的这个插件,其实单纯的这个分页插件有很多,比如说顶顶大明的这个page啊等等,OK吧,但是我们现在选择使用的是什么呢?是不是前端UI框架呀?
07:05
不论是你的boosp还是EZUI或者是UI等等等等啊,或者是咱们比较久远的TS啊,啊,这个分页相关的插件是100%是要有的,能理解吧,老师,我不想用分页插件,我想自己写一个行不行,自己写行非常的简单,但是呢。你在前端写的这个插件啊。有什么弊端呢,同学们?就是一个字啊,丑。磕碜难看啊,格力,总之啊,就是什么呢?从给人的视觉效果来看,就是四个裸露的超链接,首页尾页,上一页下一页超链接是不是很丑啊?那老师我给他做成按钮,你做成按钮,你能有人家这个按钮漂亮吗?是这样吧,而且从功能来讲的话。
08:00
你想要做成这种12345的形式是很麻烦的,超级麻烦,OK吧,所以说啊,自己写这个,自己写一个这个前端啊,与飞页相关的这个前端可以是可以,但第一二是丑,第二是功能跟不上,OK吧,所以说将来在实际项目开发当中啊,我们100%啊,100%用的肯定是什么分页的插件。我刚才说了分页插件是不是有很多种啊,但是我们现在用的是boot这个前端UI框架,那么我们要使用的呢?就是什么呢?Boot所要集成的这个前端UI的这个分页插件,OK吧,好,那么在我结合这个分页插件之前啊。我多填几条记录啊,这个市场活动。我填记录之前,我我我要做一个操作。我把这句话给除掉。哦。
09:00
啥意思?这句话啥意思来着?重置表达,我要把这句话了。什么意思,我是不是添加记录比较方便呢?我们我们就来一个发传单系列的吧,行吧。发传单,比如说啊开始日期。我就随便填了啊,保存啊,我把刚才那句话注掉了,什么意思呢,一点它是不是马上这些内容还有啊。我填这些东西都是有意义的啊,你别以为老师瞎填的啊。
10:13
洗头了,够用吗?14条,但是里边有重复的记录是吧。发传单一是两条啊哎,我把百度推广删掉吧,行吧,咱们都统一都是发传单系列的吧,这个发传单一后边我来个ABC吧。二有重复的没没有吧。行,那最后给我们展现出来这两条记录,是不是肯定是我最后填这两条。看到同学们没错吧,二二和22A是不是最后两朝天呢?因为咱们是不是降序排列了对吧?好行,接下来啊,咱们把这个分页长线加加上啊。啊,对于bootwap来讲啊,咱们这个分页插件啊,好叫做。
11:05
咱们来看看啊。这个东西呢,叫做这个pageju,其实呢,这个它没有什么特殊的这个叫法,Pageju本身就是这个分页的意思,OK吧,好,那加上那个这个BS之后,这个BS代表的是什么呢。Boot strap这表示的boot strap的这个分页插件OK吧,好,我们现在把这个分页插件给它集成上啊。啊,我们看看这个解扣里边啊没有啊,没有给它加上。被看到没,是这个啊CRC,然后解里边咱们来一个。给周围啊,给它加上这个,加上之后啊,我们会看到啊,同学们里边是不是有CSS用来描述样式的,对不对,JS是用来描述行为的,这个en呢,它表示的就是什么呢?这个语言包OK吧,它没有一个这个中文的语言包啊,但是呢,这个我通过这个英文的语言包,我改了几项,首页尾页,上一页下一页。
12:12
OK吧,跳转到第几页,这些东西没改啊,你想改你自己改OK吧,好呃,我们现在啊,把这个差价啊给他先集成上好activity里边的index点接SP好,我把这个插件拿过来。我在这儿就直接粘了,我不一个一个印了啊。好,但是你需要注意的是什么呢?咱们这个插件,尤其是这个GIS。我一定要放在谁boot的上面还是下面。一定要放在它的下边,是这样吧,先有boot这个主体之后才能有它的插件,是这样吗?好,这个插件啊,咱们加上了之后啊。
13:06
嗯,就来使用一下了啊来。数据处理完毕后,大家注意看啊,我们现在是在这个得塔点,这个A不算事啊。是刚才咱们写这个分页对吧,分页是这啊好,这个数据处理完毕后啊,数据处理完毕后我们来这个啊,结合分页插件啊这个啊。结合分页插件。对前端。啊,展现这个啊,分页相关的信息OK吧,好,我们现在啊,这个插件大家注意啊,不论从我们现在来使用,还是到将来的实际项目开发,再到这个阶段的这个考试啊这段代码。
14:03
不要求你去备插件这种东西都是直接拿过来使用的,背它没有什么意义,对于咱们来讲没有提升,能理解吧,插件都是直接拿过来用啊,好,咱们一块儿来分析一下里边都有哪些内容就行了啊。好,把它粘上了activity page我看看啊。我们还得把原有的这个分页啊,先给它干掉啊,因为原有的大家注意啊,是不是给我列出来原有的一列这个组件。我先给它干掉啊嗯,三咱们这个标签啊,大家注意一定要成对删啊,这个东西很危险。是要给你都干掉了。行,这个留着吧。我来个这个div啊。
15:00
ID,咱们来一个这个,我们跟我们这个上面这个保持一致啊叫activity。啊。Page表示的是我要在这个div当中来画什么呢?分页组件OK吧,好,那现在啊,大家注意看我们上边的这个activity page调的这个bs page nation这个方法,这个方法是我粘过来的,这个方法是我写的吗?这不是我写的,这谁写的谁写的谁写的,来看看,这可不是老师写的啊,这个是我们的,是不是这个分页插件,这个GS行为来写的,JS里边是不是做的是行为,做的是方法,CSS描绘的是样式,是这样吧,好,是我的分页插件写的啊,我们来分析一下下边都有什么啊,同学们。首先我页码培训。
16:02
看到这个page代码是不是我们给提供的,指的是什么?当前页的页表啊,好,然后呢,Page size,每页展现的记录数,这两个东西是不是我们给提供的。每页最多显示的记录的这个条数,这个你是可以设置的,也就是说不能超过20条,这个是可以设置的,OK吧,好,默认是20啊,总页数咱们是不是没有呢。总页数还没有呢吧,没算呢是吧,行这个过了一会再说啊,这个总记录数呢有没。哎,是不是?贝塔点头头,我刚才说了,这个偷投谁用啊?是不是这个分页插件用啊,总记录数啊,显示几个卡片,什么叫卡片?同学们啊,这些东西叫卡片,看到没?啊,显示几个卡片好下边啊,什么show goto page跳转到第几页啊,显示哪些信息啊,咱们基本上都给列成处,也就是说啊,给用户显示的分页信息越详细越好,OK吧,但是根据用户需求,有些东西咱们也可以禁用掉啊,那最后的一个大家注意看啊,安居配这个回到函数是在什么时候出发的呢?
17:18
该回调函数。是在什么呢?我们点击什么呢?扉页。组件的时候处罚的,那处罚它大家注意啊,咱们应该调哪个方法啊。陪。看没看到,这回咱们写了几个入口了,来看看啊,咱们刚才分析配举例子的方法是不是有六个入口啊,其中咱们是不是有一个点击分页组件的时候,是不是调这个方法啊。哎,咱们又写了一个入口,是这样吧,那么这个入口大家注意看啊,这两个参数你千万不要碰,它是我们的前端的分页插件给我们提供,好这个贝塔是人家自己的,不是我们刚才的这个能理解吧,总之这句话你千万不要给我碰就行了,OK吧,但是这个方法掉的是我们的。
18:17
OK吧,好,那现在咱们就差个什么呢?咱们是不是就差一个这个总页数了,对吧。所以说咱们算一算啊。来计算这个总页数啊。算一下总页数咋算哇?比如说一共有20条记录,咱们假设啊,一共有20条记录,每页展现五条记录,一共是几页?四页没错吧,20除以五呗,那如果我一共有21条记录,每页展现五条记录,一共是几页?五页最后一页显示那个单独出来那一条对不对,所以说我们现在是不是还得算一下能不能整除的问题啊。
19:10
对不对,来吧,偷偷来个啊取数什么取叫做。偷偷这个叫什么?得塔点total对吧?得塔点total这个符号叫什么取。我。模型的模对吧?咱们这个it界的人叫取模,数学界叫取余数,对吧?好,贝塔点头,模上谁呢?培均S是摩法拍啊好,如果等于零是不是说明能整除啊,能整除的话,咱们来一个三步运算符吧,行吧,如果是处的话,咱们来除以一个是不配一句这个size就行了,对不对。否则呢,哎,这个应该是个问号是吧。
20:02
啊,我想一想啊,问号冒号对吧?好冒号冒号,否则呢,否则在除得的结果之后,咱们是不是得加个一啊,否则就相当于没有整除对不对,但是跟加法不一样,你不能直接加一啊,这个东西咱们得转成这个数值才能加啊,来一个。Price price price啊,这得转一下啊。转上之后,咱们再加个一行,这个东西咱们也有了啊。行,接下来咱们来看一看这个分页的效果啊,同学们啊,看看有没有好,我们现在刷新一下好市场活动。啥没有?来看看啊,我们来看看问题出现在哪了啊,注意看同学们啊,点市场活动注意看了啊,走一个我们来看看啊,大家注意看404表示什么意思。
21:00
找不到的资源对不对,你看看啊,这些资源都指向了谁啊,统一指向了page,看到没?就是我们刚才那个分页插件找不到,是这样吧,不是说我们代码出现了问题啊,而是资源没有加载对吧?所以说我们idea啊,对于me项目啊,虽然支持的很好,但是呢,新加载的资源啊。他欠刷,你得必须得给我刷一下,OK吧,大家注意看啊。先把这个服务器关了再刷啊刷。说了吗?刷完了吧,下边这个读条很快的啊,好咱们再启动。
我来说两句