00:00
再来,咱们再继续啊。下面我要开始做我这个水果系统了。下面呢,我来写这个系统呢,同学们啊,稍等一下,呃,这个。这个得留着这个CSS,要不我就删掉行吗。啊,不要了啊。然后我们在user当中log这玩意也删掉啊。大家目前呢,我们的页面全部都放到web下面。不要放在web INF下面,如果放在web in下面是访问不到的。啊是访问不到的,但是其实我们实际开发的过程当中呢,我们会把页面全部扔到外B硬盘下面。就是想不让别人能访问到,那你说老师你这个不是矛盾吗。你页面不就是想让别人访问的吗?结果你还不想让别能访问,我说的是不想让别人直接访问,不想让别人通过D地址栏直接输入网址就能访问。因为那那样别人可能会有恶意的一些攻击。啊,我们不可以让别人直接访问,这个我们到后面再讲,到后面再说。
01:02
行。继续咱们把这个项目一起来看一看啊,这个项目上次我们做到哪里了呢?我们好像写了一个index点。是吧,同学们,咱们写的这么一个小页面。呃,这个小页面上呢,我们再继续啊,我先把它先启动起来。这个小的页面上呢,下一步我要做的是要编辑它。这边有个叫苹果。稍等一下啊,把它全部清掉。OK。这边还有打印是吧,这是我们之前打印的是吧,同学们。打印,要不就让他打印吧,不管他了行吗?打印就打印吧啊。行,我们来看一下啊,现在呢,我要来。现在呢,我要到叫index。是叫index吧。哎,对的是吧,Index有了行这些数据都有了。
02:06
下面我想做的是,我想在这些名称上面我要设置超链接。设置超链接,当我点击这个超链接,可以进入到它的详情。然后可以对它的详情进行编辑。可以修改吗?行,咱们加超链接哦,怎么加超链接呢。也就是这个上面。我们也在创链接。所以啊,我就在这边写个A标签。把苹果把它放进去。可以吧?然后这边写个,比如说我这边就写个叫A点度。我写一个叫ad的点度,将来这个ad的点度。既会给我们ad的点度所对应的那个S发请求。明白我的意思吗?就会给他发请求再来。That。好,我就做了这么一个改动。
03:01
那么有可能我这边改动注意了,我通风盖没有停止。啊,我只改动页面,我看他能不能给我更新过来,我这边我就写个苹果一。啊或者这样吧,不是不不是这边写苹果一,我在这边名称这边我写个一。如果它的标题上面出现名称一,是不是说明我刚才写的这个代码改动通盖已经识别了?那听着我再说啥吧。行,我就写个名称一。我们再回到页面上去啊,这个任务栏现在看不到啊,其实我们ID它会更新的,刷新一下。是不是名称医药?但是你会发现,同学们。老师,你不是刚刚加超链接了吗?他怎么没有超链接呢?谁能帮我解释一下。谁能帮我解释一下?为什么没有?我这边请问我这边是不是有超链接。我确实有,但是同学们外面是不是有个time left这么一个标签?
04:01
这个标签它会对我们的页面做渲染,它是不是会把这个值。哎,它会覆盖这个TD的in the text。相当于调用TD这个节点的in the text,是不是就把那里面的这个内部的这一大坨给覆盖掉了。所以你这个超链接标签是不是就不存在了。能能听懂我意思啊,听着听行。那我们怎么去改动呢?其实很简单。这玩意儿既然你已经加标签了嘛,那你这玩意儿你剪切咋办。是不是啊?放到A标签里面不就完了吗?A,标签的内部文本是改这个值吗?行,改动好了我再改它名称,二看他能不能有改动。这就是为什么我让同学们这个地方请你改成deploy,这段请你改成update的原因。行吗?再回到页面,我们刷一下。名称二出来,你看超链接是不是都有了。
05:02
当然现在点超链接不行诶。报404还没写这个呢,是吧,还没写呢,行,下面咱们来写一下。我给大家再说个问题。结合咱们刚才的路径的问题,这个index.html。当前正好在我们的web根目录下面。所以啊,我写这个ad的点度,你看到这个地址点一下啊。它是不是就是PRO10后面紧跟着就是ad的点啊。如果我这个index页面它不是在根目录下面,假设它是在A-B-C-D下面有一个index页面,如果你在index页面上点超链接,那它的路径就是这样的了。大家能不能听懂我在说什么?啊,就是这样的了,所以我们和我们刚才的规则是一样的,我们说过我不管你当前的页面有多深,当前这个页面上的路径,我们最好多使用绝对路径。
06:02
能听懂吗?最好都使用绝对路径。因此这个地方TH,我们最好不要直接写TH。我们最好写TH冒号。HF。艾大括号,把这玩意扔进去。只要我加上他。那么不管我当前的index页面到底有多深,它都没有关系的。啊,它都是基于绝度路径,都是基于根目录,然后下面有个ad的点点度是吧,你这边可以加个斜杠没问题的。啊,就是这样的。好了,这个改成名称三,我们看一下它的路径问题。后退刷一下名称三点一下它,你看是不是还是这个啊,应该是没有问题的啊。再来。这个我已经把它加上去了,所以下面我就缺一个这玩意儿吧。那行吧,咱们是不是要补个。
07:02
回到flute。回到咱补一个吧。I。继承view best是吧,然后咱们写个注解,可以写注解吧,没问题。Edit。斜杠不能少是吧?那请问同学们,它是get请求还是post请求?盖的星球。是不是啊?刚才我们点的是超链接嘛,大家只要记住一点。只要不是form表单method等于post那样的形式。都是盖的,请求行不行?暂时先这么记啊,暂时先这么记好。所以我们就重写一下do get。好,重启这个度盖的方法。那请问一下这个do盖咱们怎么来写呢?Do盖是不是要去首先要去查询某一个库存记录啊,那我是不是要根据ID去查询啊,那你你是不是要给我ID,我才能获取的ID啊。
08:07
所以我这个窗连接,我感觉我直接这么写还不行。啊,我直接这么写还不行,我点它,你看你直接返回A点点多还不行,我是不是后面我得加一个问号。比如说fid等于一号。这样是不是才会把fid等于一,这个数据才会发给我们的ad的点度这个组件啊。所以。我们这边也要跟上去问号。Fid等于一个值。啊,要等于一个值。比如说fid,咱们这边是不是应该有float点什么什么什么是吧,所以我们写一下float.fid。啊,我们得把这玩意儿得把它加进去才可以。行,我把这个名称改成名称四。他这边报错报错不管他啊。行,再来。
09:00
后退刷一下。好,我们再点一个。其实不用点,大家能看到我下面的地址栏吗。Ad的点度是吧,问号fid等于float的点fid,但是这个点Fi它是个字符串诶。是不是啊,它是个周,算什么意思呢,同学们。不着急给他一点点的解释啊。请问一下这个ad的点度。问号,我认为包括这个fid等于这几个字母,我觉得它应该是普通的字母串。但是后面这个玩意儿,你最好能够给我执行,相当于是一个time的表达式。就是这个float里面的这个fid属性值嘛,但前面这个应该是普通的字符串嘛,那老师这个到底是怎么个解决方法呢?又有普通的字符串,又有又有想要别人解析的timeli的表达式。那他们那不可能这么智能啊。啊,他怎么知道你你哪个需要解析,哪个不需要解析呢。
10:01
啊,咱们碰到的问题。我们怎么办呢?单引号。把这玩意儿剪切挪进去。再写个加号。这样一看单引号哦,说明。这是字符串。后面加上说明,这玩意是个表达式。你用单引号引起的,一般都表示记不上嘛。行。咱们来试试看对不对,改成名称五,只要我看到名称五才说明为什么我要一直改这边。大家知道为什么吗?如果你这边显示页面上显示名称五,那说明下面代码也一定会生效。既然既然区分开,到底我这玩意儿到底吃着有没有对是吧,到底是对还是错啊?刷一下。名称五、把鼠标放上去。哎,不对啊。float.id啊,还不对啊,同学们。啊。
11:02
这不是故意的啊。我哪里写的不对?大括号。这个值。再加上后面一个值。嗯,我觉得应该是对的啊。应该是没有问题了。怎么还不对了呢?也就是说双引号不应该是双引号啊,应该和双引号没啥关系啊。我试试啊,我看看稍等一下啊,再加个汤。再加一层啊。我再来试试啊,我在里面加个这个刀的打括号,我试试啊,把它改成名车六,这不是我故意的啊。当然我最终的解决方案不是这个啊,咱们慢慢来刷一下。还没反应过来。还是明成,我。再刷一次名称六,把鼠标放进去。是不是可以了,这次就变了。啊,Fid是吧,这次他就变了。
12:03
当然了,我们常规的写法不这么去写啊,这么去写太烦人了。啊,这些我告诉他这么这么是可以解决的,这个方式虽然不是最终的解决方案方案,但是大家要理解。要理解我变换的这个过程,行吧,同学们,因为有一部分是普通字符串,不需要他们内去解析,哎,有一部分字符串需要他们去解析,我们一步步把它演变过来的。我们最终写法可以怎么去写呢?我把这句把这行注释掉啊。感觉C我不删啊,注释掉,这样大家好复习。我们常规的写法可以这么去写。我们可以这么去写,同学们。回到。回到这稍等一下啊。咱们的在这。艾特大括号。外面还是普通的自助餐。问号没了。问号没有了。
13:01
你要带几个键值?对,Name等于value name等于value,你要带几个?请你用小括号括起来。然后在小括号里面写上一个name等于一个value逗号,一个name等于一个value。把它变成这个形式。啊,就变成这个形式那行。所以我们来写改一下。就是这个问号,咱们不需要了。是吧,我们不需要了。这个单引号也不用了,你不要使用拼接字符串的方式。删掉。这个也可以把它删掉。这个问号把它去掉。直接改成小括号,然后把这一坨。简介挪进去。一个一个name等于后面的一个value值,是不是这样的?啊,就把它改成这样,如果你还有其他的信息呢,逗号,比如说FM。
14:01
等于某一个值是吧,同学们啊,你可以接着写,行,咱们这边没有就这样。我们来试试看看对不对,名称七。我们来试一下。我看一下啊,单引号我应该都删掉了,没问题。好,再来。刷一下。名称器,把鼠标放上去是不是一样可以啊?ID等于八没问题。那行吧,咱们暂时先这样,我们暂时先这样啊再来。那下面我们要回到这个叫A的哦,其实我们这边还有一个,还有一个解决方案叫加双竖线。啊,加双数线,咱们这个这个当中好像还没有涉及啊,不过我在网上百度了一个吃灰教程啊,这个吃灰教程里面有。没关系的啊,这边叫拼接。拼接这边一个叫竖线。
15:00
行吧,这个不着急啊,不着急,到后面我们不得不用它的时候再说啊。行,咱们把把这个思路再拉回来,我们回到A的,我们现在要写这里面,现在是不是我们有fid能给我们发值啊,那我们是不是要获取。String fids,我们说过,首先它获取到的是不是字符串呀,所以我们get获取到,我们可以做个判断。If fiddl不等于now。并且你不等于控制不上。啊,并且你不得有控制不上。Fidd,那这个时候我再去强转。Infid等于intake.passfid s t是不是这变成它,然后我再去调用DA0的方法去获取嘛?呃,我先说个小细节,就是像这种字符串判断是否为空的这个方法呀。呃,要经常用。啊,要经常用,要不就这样吧,同学们经常用,我就写个工具方法吧。写个工具号码算了啊,归到这里面来。
16:03
新建个YouTube包。UT。IL啊,就表示工具包死菌有TS死菌有。然后这里面我就写个public。Static值is empty,判断某一个字符串是否为空。判断字符串是否为now。或者这个。Return ST等于得到。或者他点equals s。就这样,再写个方法。Foolish is not empty。EPT,好。S。那么它就是return,它is empty。把ST放进去是吧。哎,我写好了,写好之后我回到这里面来,那我就不用写这么长了吧。点is not empty。点是吧。
17:01
哎,能能跟得上吗?同学们啊,今天是做了个小插曲啊,行,咱们再继续。呃,下面呢,我得回到fruit do。New。好,我得用它。然后我得调用它里面的方法,当然咱们这个里面目前只有一个方法,所以下面我得写个方法。根据ID获取特定的,获取特定的。水果库存信息是吧。Flu get fruit by ID。In ID行不行?同学们我得写个方法,因此我得大大的实现类。为啥报错了?为什么?你接里面现在有两个方法是吧,行实现一下吧。好,咱们写一下。Super点肉。Select floor t-float willfid等于一个值。
18:00
可以吧?哎,这样就把它写完了。好,我们再回到这边来。调用一下呗。do.get float byfifi。行,得到一个。拿到这个之后,我们可以通过request用于set。Fruit,哎,是不是把它放到request中去了?行,然后再用点叫process template,咱们要不写一个A的页面行不行,同学们。我们可以写个A的页面,两参数,Request response。把它加进去。可以了吧,同学们,如果对于这些代码,对于内部的这些代码,除了request set hb的这句话,其他的三句话,如果你还是感觉很吃力,很陌生,你要好好的啊,好好的反思一下啊,要要要提出个警告了。再往下你可能就听不懂了,说明你这个周末没好好练啊,如果这三句话你看的很熟悉,那应该就问题不大啊,说明大家练的比较熟。行,下面我缺一个ad的这个页面。
19:01
我们来写个页面。嗯,这个页面的话,我们继续。继续使用这个模板。好,Index ctrl c ctrl v,我们叫HTML。然后a.HTML我们要不就访问a.CSS行不行。a.CSS。然后呢,我们CS上面我们就拷贝一个CTRLCCTRLV。a.CSS。然后呢,我们在在A的这个里面啊。看好了啊,呃,Content是要的,想象一下啊,我们这个content应该是中间一个div。他是居中的。是吧,就是浅蓝色这个D。啊,浅蓝色第二里面有个叫福德list这个。所以说福利这个也可以保留吗?嗯,这个是3F30啊,凤是30,这个字体可以留着,我们这边可以写一个叫编辑。编辑。
20:01
库存信息是吧,同学们写个标题。那下面这个table,咱们就需要好好的把它改一改了。T2。这个是TH,我们这边写一下,这个叫名称。然后我们需要一个TD。硬的。Type等于。Text。然后呢,Type text,这是名称嘛,这是一个稍等一下啊,咱们一步步来改。然后我就把这个T2把它结束掉是不是啊,想象一下啊,再来TR。下面一个叫单价,我们加个冒号啊,样式大家先不管啊,先想象一下我写标签,大家也能够在头脑里面要浮现出这个网页啊,Text。好,这个name要不把它写上就算了啊,叫price下面也把它补上去吧啊。等于FM行。再结束一次,再来T2,呃,下面一个是库存。
21:03
好,拷贝一个吧,不想写了啊,拷贝一下。好库存这个是不是叫F呀。再来。跳。那下面一个是。下面一个应该是库存备注是吧。备注。叫mark。那这个写完之后,我们是不是还要再一个TR,要一个修改嘛,咱们编辑后面要想做提交嘛,是吧。行,那这句话我们把它剪切。放到这个TH里面。把它删掉,因为T默认是不是可以居中啊。它默认就是居中的,把这个删掉,改成卡SPA卡span。看两个。然后这个音input等它肯定不是文本框喽。Type等于submit,将来咱们要写表单嘛,现在表单还没加,不着急啊。加修改。
22:00
下面所有的我就全部把它删掉了。就这样子,这就是一个table。啊,就是这样。那这个宽度是20%是吧,20%就20%吧,也不知道它会显示人到底是什么个模样啊,也不清楚。行,咱们先把这个页面先来试试,我们先回到这边来,我们第一步先看它能不能获取到数据,行不行,同学们。好,所以我就把断点放在这边,我们看一下它能不能获取到。好,现在我们来启动一下。那现在咱们要访问的是呃,Index销回车。哎,Index页面出来了,咱们点个西瓜点一下吧,点。
23:04
看看能不能进入到断点。诶,进来了。一会出去吧。有的啊,没问题。所有的属性都有。那说明咱们服务器端获取数据是没有问题了。我们看看能不能跳转到ad的页面上去。看一下页面。哎,是不是能到这页面啊,还行,凑合着看吧,啊,不至于太丑是吧,行。那下面这些数据,我们是不是要把它填充进去啊?哦,填充一下。好,这个断点去掉了啊,我们现在回到页面上去。呃,第一个是名称,咱们怎么写哦。TH,我们以前用的是不是textile?Text是不是解决了他叫叫in text的问题啊。那咱们input不是in the text,咱们input是不是一个value属性啊。那行,咱们就是用TH冒号value。叫T冒号value。好。那这个里面的值写什么呢?
24:01
我们要获取request保存作用域的值,咱们上一次课写的是获取三线用域的值。我们在index页面上获取的,看一下。三线作用域是不是通过Dollar大括号,然后三先点float什么什么是吧,叫三先点。叫到了大括号三线点,这是获取三线作用域,那么获取request作用域呢?不知道,看一下吧。我们来看一下。好,叫访问。遇对象啊这个。点进去。咱们看一下请求欲,请求欲就叫request。绘画玉就叫sa。应用域就叫application吗?那要不这样吧,咱们一口气把三个看完算了行吗?点一下看一下。你看到了大括号是不是直接写个K就可以了,咱们上面有个K,直接写个K就完了。嗯,这还蛮蛮简单的啊,绘画玉咱们已经学过了,是不是前面加个三线点啊。
25:02
别是花语,那你猜一下呗,应用语前面要不要加前缀?他家的前缀叫application点。没问题吧,同学们,那你看这学起来多快是吧,行,再来。所以咱们来改吧,现在我们是不是request作用域啊。那行回到ad的页面。到了大括号,Request是不是可以不用加呀啊,直接写我们保存的T叫啥呀。是不是叫flu呀?行。回到这边来,float.fm行吗?同学们就这样的,他报错了,报错不管它啊。再来。再往下。下面一个叫TH冒号value。到了大括号,叫fruit.price。再来下面一个。TH冒号value。到了大括号float.i。再往下备注。TH冒号value。
26:00
好,弗洛特点remark。行全部把它写完了啊,这个表头也有好吧。全部剪切。再进去。还报错那行吧,报错不管他吧,啊,编辑库存信息我加个一行吗?加个一啊,看他能不能给我更新过来。这个上面应该没啥问题了啊,我把这边重新改一下,把七去掉。试试吧。回到这。后退一下啊,刷一下。行名称变过来,改个西瓜。哎,是不是有数据啊,哎,没有问题的。啊,是没有问题的。行,那数据我们就获取到了。再来。这个地方的数据float.f LA float.price float.f总要加个float点,好烦啊。呃,不是在这在这里面有啊,我们我给大家找个标签。
27:02
叫TR情报和object。叫TH冒号object。诶,这个object是什么意思呢?我这边只要我在这个标签上面写TH冒号object叫user了,那么我这个内部的标签里面,我就不要再去写user.name user.a user点什么什么。我就直接写user后面那个属性名就行了。啊,他用的叫新W,要改掉啊,不叫do w是新W行。大家现在已经懵懵懂懂啊,还不能完全确定,没关系啊。下面我就在table这个标签上面。我来写一个。TH冒号object。Dollar,大括号,Float。那就表示在这个table标签内部所使用的所有的属性都是来自于fruit,它的里面的属性能听懂吗?因此这个地方的代码我就要把它改掉了。这一行我把它拷贝一份。
28:02
啊,我不删啊,这样大家好复习。点错了啊。那这边应该怎么改,首先到了改成新新大括号这玩意还要不不要删掉,就写成这样就可以了。行吧,同学们,那这样是不是比较方便嘛,神的nameb都要写float.float点嘛,啊行。这个改一下吧,心。把这玩意删掉,Price。新mark。好,我改完了啊,那我把这个改成信息二行吧,同学们看看有没有更更改啊。回到这边来,回到这儿。后退刷一下。点一个。信箱说明改过来了吧,说明现在是没问题的。行,编辑搞定,下面咱们再来看一下修改。
29:01
呃,那你这个修改哦,修改它这个submit,我们需要把这些数据提交给一个update所对应的嘛。所以我们这边是不是要搞一个表单啊。这个表单请你把它放到table的外面。放在这。不要写from啊,我们有同学写from,写form啊。剪切,把它放在table的外面。表示这是个表单吗?行,那我把这个代码缩进,把它调好啊。Form我们要发给谁呢?Action,本来我action可以写update点读对不对?但我说过我这个页面万一我的路径很深呢?很深的话,前面有A-B-C,那不不就是A-B-C下面的阿布的点读,那路径不就不对了吗。所以呢,我们这边就写TH冒号。从现在开始,我们所有的路径都加TH冒号。啊,然后这边要写大括号,把这玩意儿挪进去。艾特大括号只有我这么一写,就表示我当前这个路径是基于根目录,我们交易斜杠行吗?同学们就这样子。
30:06
啊叫阿点路,慢慢养成习惯啊行,还有另外一个属性,不要忘了。But I going to push。那下面我缺一个阿的斯淘宝。你们写一个吧。好,回到这边来。Update。好,继承。View best。Web。上update电镀。请问一下重写度什么方法?你咋知道多破衣裳?哎,我们这边写了一个form表单码method等于了嘛,是吧,同学们啊,很好。回到这边来,咱们写个request。Response。再来。所以呢,我就一个一个获取数据呗。把它放到右边去。
31:02
好,左边这边把A的打开。好的,Mark。获取一下吧,String FM等于request.get。获取到再来request.get parameter,我要获取price。ST。再来。那就intake吧,直接强转算了啊。点PA。Price。叫price,就这样吧。再往下,下面一个是request点叫F是吧。I。好,叫F杠的STL。所以intake count等于intake.pass。I'VE come。
32:00
是吧,再来。为啥要把左边打开。我就是想告诉大家,你这个name不要写错了啊,以及咱们有同学这个name后面加个空格。对吧,你加控你这个调错你。考验我的这个眼力是吧,好。对,这是F的,再往下是mark。Mark the request。点get permit。好,那信息我们都获取到了吧,那我们要修改的时候,同学们,我们update的语句怎么写,Update的T-set f等于啥,Price等于啥,F的mark等于啥,Will will条件后面是不是有个fid啊,要根据主件查询嘛。我们这边好像没有主见诶。没有。那请问一下,我如果想获取ID,能不能获取到。可以的吧,我想获取ID肯定可以获取加一行。T2,这个我们写个ID。啊,这个咱们那写个fid,然后这个value值写个fid是不是同学们就可以了,但是一般情况下,我们不会在页面上去直接显示ID,因为对于普通的用户,普通的使用者不是程序员啊,普通的网民而言,人家这个ID对他对于他来说没啥意义吧。
33:19
是不是同学们,所以一般这个信息啊,第一我们需要跟随表单发给控制器。第二,在页面上没有必要显示。既要发送又不想显示。那么我们就把这个type等于text改成。Hidden。你改成黑人?它在页面上就不显示了,那页面上不显示这个TR就别要了,行吗?同学们。山。删,直接写一个input就完了。这个TD也不要。Table还是以前的table,直接在这边加个input,这个叫隐藏域。
34:01
隐藏于。啊,功能。类似于文本框。啊,表单发送时。会啊,会随着表单的发送啊。它的值我们写一下吧,它的值。它的值。会随着标段的发送。啊,也会发送给服务器行吗?同学们啊,但是界面上用户看不到是吧?同学们,界面上用户是看不到,咱们一会儿来看一看啊,是看不到的。所以这个fid的值,我这边是,请问我是不是也是一样的获取啊,没问题的获取一下呗。子俊。Ids等于request.get permit。Get parameter f ID。Infi等于infi。行。
35:00
我全部获取到了,那下一步我就要准备一个update的方法呗。哦,我得把那个污拿过来,Private float float等于new float m PU。好,回到这里面去。咱们补个方法。修改指定的库库存记录。就VO算了啊,咱们就别搞,别搞什么布尔类型啊什么的啊update。好,就这样子。那行吧,咱们是不是要重写一下。重写一下update的方法。此搜狗一句等于update t-fruit。STEM等于一个值。Price的一个值。F等于一个值。Mark等于一个值。Willfid等于一个值是吧?同学们,行super.xq的。
36:10
Get remark。Getfid。搞定。检查一下啊。上面有12345有五个问号,12345对的吧,五个值没错。Update的方法写完了。洗完之后,我们再回到这边来。我们来调一下。Float da.update哦,Update里面需要一个float是吧?New float fid。Price f remark,把它放进去。就这样的。不,这不就update完了吗?Update完之后我们再回到index页面上去。Subdian process template index。然后request response。
37:01
行不行?这样我就把它写完了。好,我们稍微加一点点注释啊。这边是。获取参数。好,这边是。这边是直行。执行更新,我知道我写的是二,我没写错啊。我没写错。这边是资源跳转。老师,为什么小二,因为缺了个一。缺啥?缺什么?哎,非常好设置编码啊,咱们同学反应过来了。是吧,同学们。你不设置编码,你这个里面有乱文,有有中文不就乱码了吗?是吧?行设置一下编码。那行吧,写完了我们一起来看一下啊。我们的修改应该是没有问题的啊,但是咱们到首页上还会有一些个小问题,坚持一下啊。坚持一下啊。
38:09
行,我们回到首页。把它关掉,直接开这个页面吧。直接访问index行吗,同学们?我们看一下啊。西瓜三三十一。点一下它,把它改成五,55行吗?同学们,五和55啊,中文也改一下吧,西瓜很好吃,加感叹号点修改。哎,有点小问题。啊,一个小问题,好。从这到这,CTRLC。稍等一下啊。放多少?好,他报了这个错误,那同学们不要急啊。我们先看页面。这些单词我都不是我写的。这个也不是我写的,这也不是。这也不是看这一行。这个update是我写的吧,他报了错,就update里面的do post方法有问题了。
39:07
那么阿布的斯的哪一行有问题?26号有问题。所以大家看到这个错误不要害怕,你稍微耐心一点看一下,看有没有哪个单词是我们自己写的嘛。好,这是这边能看到一个线索或者。这边不是没有信息吗?请大家把这两个选项卡看一下。在这个选项卡里面,我们也能看到信息。和刚才报的一样。你看是吧,26行啊。这个类是我们写的,这不是,这也不是,这也不是,找到第一次出现我们写的那个类。所以后面你就不用看了,就看这一个点进去点。到这一行。是吧,那这行有问题,那这行怎么有问题呢?FID怎么有问题呢?好,我们到这来看一下。Name。等于fit没有错,我怀疑我怀疑不是我的问题啊,我怀疑是不是他这个没有没有更新过来。
40:10
哎,对的,我们同学说对了,还真不是,还不真不怪这个工具没有更新过来啊,是什么问题呢。哼,这个TH冒号object是不是table范围有效啊?咱们刚刚所有的信息是写到table里面的,后来咱们一激动把它挪外面去了,是吧?是不是这意思啊,咋改?你说老师把它挪里面去可以啊,可以挪里面的啊,没问题的,除了挪里面之外呢,我就得放在这儿怎么办?这玩意儿加哪里去啊?哎,咱不加到缝上不就完了吗?在他的这个范围不就又扩大了吗。能能反应过来吗?同学们,行,就这个小问题啊,行,咱们改一个编辑库存信息三好,这是第一个错误,坚持一下啊,还剩一个错误。呃,还这个不算错误啊,不算错误,看一下啊,我先刷新一下啊,直接刷。
41:00
你看是不是三现在不报错了吧,点修改啊点修改。改成五。55。我先把先把控制台全部清掉啊,先把他给我报的错全部清掉。这边应该没问题了啊。全部清掉,好,再来点修改。好,修改过来了吧,不对,老师没修改完哎。那你总不能说你修改完之后,还是说这边给人提示,请你刷新一下它。这也太low了是吧,你不可能让别人去刷新是吧?看数据库啊,先看数据库有没有修改过来。点一下对比。打开它右键打开表。五五十五数据库改了。但是页面上没更新。咋回事?怎么回事?坚持一下啊,坚持一下。这边报了什么错误?
42:01
哎,怎么会报这个错?稍等一下啊,这个里面报错了,这个里面报错就有问题了啊,我看一下。回到这边来,往上走。我们这边之前做的判断是音色的。哦,我知道为什么了,同学们。我们这个S点。对于他这一句话,我没有用if去判断啊,这是我的问题,回到这来和上面一样啊,如果你是音色的操作,咱们现在是不是update的操作啊阿的操作这句话还有必要执行吗?是不是没必要?如果是阿布的操作,是不是这句话不需要执行啊?只有音色的时候,咱们才需要获取自增列吗?啊,所以一样的根据C拷过来。成就费。If,如果是银色的,Flag把这叫山。然后从这到这剪切挪进去,把这个else去掉。啊,就这样就行啊。好,这个切掉了啊,不看了。再来这个问题直接忽略啊,再往下看。
43:01
现在问题出在什么地方呢?我们看一下update同学们。这句话叫资源跳转。这句话它的作用是什么?它的作用就相当于request。点get。Request。index.html。Forward。同学们,请大家帮我想一想,如果直接是这句话,我是不是刚刚update完?我update完之后,我就跳转到这个页面上去。这个页面上做的是什么事情,是不是从三线里面,从三线里面去展示数据。那我问一下三线里面的数据是以前更新之前的还是更新之后的?应该是更新之前的,也就意味着我这边做了update,但是我在线保存作里面所存储的list是不是还是以前老的呀。
44:01
那我直接跳到这个页面应该是不行的吧。我不应该用这句话。我应该用哪句话呀?我应该用response.send redirect。Redirect。我要发给谁啊?是不是要发给index,让人家重新给我再查一次哦。行,所以我这边就写一下,应该跳到index,注意这个index和这个index是两码事吧。这个index是不是会添加斜杠和点H?这个index是不是发给URL叫index啊,我故意这个没有加后缀啊,其他的我都会加后缀,就这一个没有加。啊,所以大家要不混淆啊,要那个不混淆,所以我把这句话打开,把这句话注释掉。我写一下。此处。此处需要重定向。目的是重新给。
45:02
Index发请求,重新获取float list,然后。保存,然后覆盖。覆盖到三星中。是不是?这样首页上这样index.html页面上。显示的session中的数据才是最新的。没问题吧,同学们。才是最新的。我就把上面这条注释。然后改成这句话。中间是我解释的原因行吗?同学们好,课下再慢慢去消化,好坚持一下,最后30秒咱们重启一下。坚持一下啊,讲完这个我们就休息。回到这边来。
46:00
咱们直接到index里面。好,这个关掉不看它啊好index有了吧,点一下现在是五和55,咱们把它改成六六十六行吗?同学们。六。66。修改。可以了吧,现在就更新过来了。好,那这个问题我应该阐述清楚了啊。
我来说两句