00:01
大家来看我屏幕啊。我们先把这个项目,我先把它复制一份。到这边肯定喂。幺三。我把它改成1.8。然后呢,这个呢,这个呢,我把它改成叫MVC。好,就这样子。我把这个文件也把它改一下。然后呢,我再把它再添加进来。好,找到model。然后呢,点击它,点击import。然后呢,我们找到幺三。找到IP,点击OK。点击应用。然后呢,Artifact这玩意不要是吧,这是幺二的。重新加一个幺三。好就是好。点击应用。那行。下面我们就在幺三上面进行操作。
01:00
呃,先简单回顾一下我们昨天所讲的内容,昨天我们讲的这个新的知识点很少。昨天我们讲的第一个新的知识点叫保存作用域。是吧?有有印象吗?同学们叫保存作用域。我们从这里开始。一直到这个地方。把它删掉。我们讲的第一个叫保存作用域。我们的保证中域呢,我们认为我们可以认为有四个。Request session application。那么request他指的是一次请求响应范围有效。它指的是一次会话范围有效application,它是一次叫应用程序级别有效。Tom盖启动开始,一直到Tom盖停止,哎,整个的过程我们称之为是一次应用程序范围。那么第二个问题,我们讲的是关于的关于这个路径问题。路径问题,我们讲了相对路径。
02:01
以及绝对路径。我们会发现,如果使用相对路径。他其实呢。相对路径我们会发现啊,他其实感觉到有一些呃。就是它的路径啊,如果我们点点杠点点杠,那可能会点住很多是吧,可能会点住很多。啊,所以呢,我们正常情况下呢,我们都是使用绝对路径。那么使用绝对路径的时候呢,我们其实以往啊,大家没有经历过以往的这个阶段啊,以前呢,我们总是使用叫。叫叫best标签啊。我们正常情况下都是使用的是绝对路径,那么使用绝对路径的时候呢,我们早期我们使用的是best,现在我们用time Le之后,Time里面一个比较好用的叫at大括号是吧,叫at大括号。挨着大括号,它就相当于我们是一个绝对路径当中的HTTP,诶你的这个叫IP地址冒号端口号加上你的。啊,是这样的。
03:00
然后紧接着呢,我们主要的精力呢,我们把这个库存系统啊,把它的功能把它实现了一下。所以呢,我们昨天呢,我们index里面的这个逻辑啊,我们注释,我们通过加注释的方式,我们一起来回顾一下。当我们一个请求过来的时候,首先请求我们的index,那么index呢,首先会被我们的index给拦截是吧。被他给拦截,那么他拦截下来之后,我们一起来看一看啊。这一行。这个是设置编码。因为我们在do post里面是不是也会调用do get,不管你是do get还是do post,我们执行的是相同的代码,所以呢,这个第一步我们设置编码。设置编码。这步比较简单,这一步就是获取当前的绘画三选是吧,同学们。然后呢,这步。In page number等于一。这补是什么?这个是不是我们,嗯,稍等一下啊。
04:04
设置。当前页。默认值是一。是吧,默认值我们设置为一。如果说你没有,我们的思路是,如果你没有给我指定当前页,那么我就认为当前页是一是吧,同学们。所以我们做了一个判断。啊。我们来看一下。这个是干嘛的?Request get parameter o是在哪里面的?Or是不是在我们那个form表单里面的。那个根据关键字查询那个表单里面。所以说。我获取O的值。如果or的值不是空的。说明我们是点击的表单的查询按钮,点击过来的。如果or的值是空的,说明我们不是点的那个表单。
05:02
因为我们or的值,我们是让它等于色的是吧,所以。所以我们这边做了判断,If如果or不是为空的。啊,并且它的值是等于色情。这时候怎么办呢?表示我们是点击页面上那个查询按钮啊,点击查询按钮,我们就认为你的配件单码要重新设置为一是吧。默认情况下重新设置为一,然后我们要去获取keyword的值。从请求啊,从请求的这个对象里面去获取关键字。如果关键字获取不到。就是说人家即使我点的是查询嘛,但是我那个里面我是不是没有输任何的内容啊,我如果文本框里面没有输任何的内容,我们要把q word设置为控制不串,否则你这个key word有可能为null。啊,有可能为闹。为囊的话不太好,你如果为囊的话,将来我们在查询的时候,是不是两边要拼接摆放号呀。
06:02
那就变成我要去查询关键字叫百分号NULL100分号了。是吧,同学们,所以我们这边要做了一个判断。我们写一下。如果qvod为now。需要。设置为这个啊,需要设置为控制不上。否则。否则,查询时。会。拼接成。百分号NULL100分号是吧,那这样肯定就不对了。我们期望的是。我们期望的是百分号,百分号你中间没有吗?控制不上吗?哎,应该期望的是这个。所以我们就做了这个keyword啊,如果是为浪的话,我们把它变成控制不串。那么这个if。它指的是我们点击的是色起这个按钮,点击的是查询这个按钮。
07:05
这个时候我们需要把keyword保存起来,表示用户是根据关键字查询的,我们要把keyword保存起来。我们写一下。将keyword。保存。或者叫覆盖。覆盖到筛选中。就是这样的啊,将Q的保存到筛选里面去。为什么我要把qvod要保存到筛选里面去呢?目的是什么呢?我这次我是点击这个表单的查询按钮,我是根据关键字查询的。那么。假设我现在已经有关键字了,如果我点上一页、下一页、首页、五页,是不是也应该是基于当前的关键字的上一页下一页?因此,我需要把key wordd保存到三星里面去。
08:00
这样将来我点上一页下一页我去查询的时候,我才会去从筛选里面把q word的取出来,基于这个q word的做查询吗?基于keyword去查询下一页吗?也就是说这就是我们走的else,上面的if我们走的是点击的是查询按钮,下面的else它不是点击的查询按钮,比如说点击上一页,点击下一页是吧,我们走的就是下面的,走到下面的时候,你qvod就不能够从request里面去获取了。我们keyword就应该从筛选里面去获取了。所以我们就写在这个地方。这边我们写一下表示啊。非啊,就是说如果。不是点击的。查询按钮。那么。啊,那么查询是基于现有的key。
09:00
进行的查询啊,这个一定绕口是吧,那么查询是基于。扇形中。保存的啊,现有keyword进行查询。就是这样的,所以我们从三线里面把这个q word取出来。那我们这边再做一次判断。当然。这个地方为什么要做判断呢?很简单,假设我第一次,第一次我通过输入网址,输入网址的时候,筛选里面有keyword吗?没有吧,3000里面就没有Q5的,那你取出来是不是等于那个。是吧,等于,那我是不是要把它变成控制帅呀?你不变的控制不上是有问题的。所以我们就做了这么这么一步操作。如果你不等于了,那么我们就直接强转,哎,就是这样。其实啊,同学们,其实像这边的操作,还有像这边的操作,你看这个是if里面的,这个是else里面的,我们可以把这两者挪到外面去,其实是没有问题的。啊,其实是可以挪到外面去的。
10:05
比如我现在就给大家挪一下,给大家看一下啊。比如说我们在这个地方。子俊k what等等闹。如果你为空。我在这个里面,我需要去做判断。然后呢,我往赛里面去保存。啊,Else,这个地方。嗯,这边还有点小麻烦,因为我这边多了一句话是不是啊,我往三线没有就保存这个keyword。啊,如果罗的话还还有点小麻烦呢,那不罗吧,行吧,不罗的话,这个逻辑也比较清晰,就感觉这个代码感觉好像有那么一点点重复的那个味道是吧。就多数判断是否为闹。行,这是我们关于keyword的处理,然后我们再来看这一段。这一段是什么呢?上面这个if。上面这个if,如果我们点的是查询按钮,那么PG,那么一定是等于一是不是啊。
11:03
如果我们点击的是查询按钮,配number一定是等于一。没错吧,你不能说你点插距按钮配奇纳百是等于五啊,从第五页开始插,那不可能的,配奇纳一定是重新归位,重新复位到一。那么else,比如说点首页、上一页、下一页、尾页,如果是这样的情况,我就要从request里面去获取page number。我获取这个page number。那就看我能不能获取到。如果获取不到。如果获取不到。使菌有点is not empty,我们这边指的是如果我能够获取到,我就对它做个强转是吧,同学们。就对他做了一个强者。那如果获取不到呢?你就看。最外面的。是不是配金纳,如果获取不到配金纳是不是就等于一啊?哎,就是这样。所以说我们想象一下。假设我们第一次我们通过地址来访问,地址来访问的时候配number,是不是我们就没有给他设置值啊。
12:06
那么我们默认情况下,这边是不是获取不到,获取不到是不是就使用外面的配G,那么等于一啊,哎,就是这样。那如果我们点上一页下一页啊,假设我没有,比如说我点网址我没有获取到,那么page number等于一,等于一之后。我们看一下啊,等于一之后,请问同学们,我是不是在这边把page number保存到三选里面去了,那么从此筛选里面是不是就有了page number了?那么这个时候我如果再点首页上一页下一页五页,是不是三线里面就有配件那了。是吧,同学们三线里面就有了,所以说如果三线里面有,我们走这个else,你看一下。这个else我们是怎么做的?好,我们把它写一下啊。Page number。我们这边是从request读取啊,没有问题,如果读不到我们写一下啊,Is not empty,如果这边指的是如果读到了,我们就强转,如果读不到我们写一下啊。
13:04
如果从。请求中读取到page number。则类型转换。啊。我们进行内音转换。否则啊,一句指读不到。如果读不到怎么办?读不到我们的page number就等于一。啊,默认就是一。什么情况下,什么情况下会读不到呢?我说过就是我们输入网址的时候,它是读不到的,那我们点首页上页下页它能读到吗?是可以读到的。因为我们首页上页下页的时候,大家看一下我们是不是传了参数的。还有印象吗?我们在index界面上我们看一下。我们的四个按钮,你看一下,我们调用了一个叫配给方法,这个配置方法里面是不是传参数啊。那这个参参数,我们来看一下JS文件,再回到JS。回到这里面来,你看一下。
14:00
是不是把这个参数是不是拼接在后面啊配number。就是这样的。啊,所以说我们这边。首页上一页,下一页尾页,哎,我们是可以获取到的。啊,其实获取到值就是我们三线里面保存的,因为我在页面上,我把从三线里面把配金拉宝把它取出来了。再来。所以我们这边这句话的作用是什么?这句话可以删掉吗,同学们。不能删吗?这句话的作用是重新更新当前页的值是不是?我要重新更新一下,比如说我点下页,假设我之前page number等于一,三里面保存的是一,那么我点了下一页之后,是不是我把这个page number加一,这个值也就是二,是不是传过来了?传过来,我是不是在这边能够获取到。获取到之后,请问三线里面是不是保存的还是数字一啊。所以我是不是要通过这句话,把我们这个page number等于二这个值是不是要更新到三线里面去啊?
15:05
这样别人再点下一页的时候,是不是又加一就变成三了,所以我一定要更新我当前页的这个值。哎,这是这句话的作用。那么再往下就比较简单了,这个这个业务逻辑就正常的了。啊,获取库存列表,然后保存到三线里面去,这个就别别让我写初始了,行吗?同学们啊,就不写了。再往下叫,这个是获取总基数条数,然后我们做了一个总页数的一个计算。计算完之后,我们要把它保存到三线里面去。看,这就是我们一个index页面。好,其他页面的这个流程咱们就不说了啊,其他页面流程相对是比较简单一点的。那行,这是我们昨天所讲的内容。
我来说两句