00:00
我们先去做这个,呃显示,那这个显示呢,超链接我们已经写了超链接or close all一个啊超链接应该是在index这块。就是edit.do已经可以找到我们这个sol里边这个edit方法。ID,这已经倒了,然后我们来获取ID string ids tr等于request。点get permit ID,然后写上一个in ID等于负一,那我们取完之后的话呢,这个。我们是通过超链接的方式把这个给它连过来,所以说可能会有一个问题,有什么问题啊,大家看一下。
01:11
可能会有这么一个问题,就是说我在点的时候。我在点的时候,我点一下,我在点的时候的话呢,我这块我随便写个ABC,有可能吧,我要写个ABC的话,我ABC这个人我是不是根本就不存在啊,这个时候的话呢,你应该告诉他这个人不存在。或者是给他一个提示,比方说啊,去那个error说啊,您要请求的页面不存在都可以,反正要给他一个信息,那来吧,所以说的话呢,这块这个ID我们提前负一个值为负一,然后呢,我们要获取一个customer。等于DAO点点。
02:01
ID。好了,那你如果这块这个值要是不写的话,那么写也行,这块是不是可能出异常啊。这块可能会出异常,或者是或者是这个值根本就找不着,或者是什么,要么是这块出异常,要么是这个customer不存在,可能都会出现这个问题,我们这块我们这么写一下啊,看着我写个try catch。嗯,这块的话呢,可能出这个异常,出这个异常的话呢,我们不去处理,我们不管它,然后我们直接在这块写上一个。Forward forward pass等于now OK,如果,如果出异常的话。If。
03:03
他不等于now的话,我才让它等于forward。Pass等于什么呀,这个时候的话呢,才是真正的是这个页面CTRLC。过来稍微,否则那有个抽纸,纸抽纸是谁呢?就是那个A。BP就直接距离定位就可以了,然后后来啊,不是空的时候,Request点在三。然后这个应。request.get request request for past.request response OK,这样写这个时候的话呢,即便是我这个值输的不对的话,他也不会有问题。
04:02
OK,那我到这个页面我们看看update。没写呢哈。CTRLC把这个拿上去,我们说跟它长得很像,一会儿的话呢,我们会把这两个汇到一个页面上来。Update,那我先需要显示一下这个message呢,这就在这放着了啊。Update。Up,好,这块这个值应该怎么写呢?也也是一个账号代码吧,等于request。点get是有主性啊。进行一个强转。
05:04
他可能然后呢,就说这个值这样写,他怎么点盖上那。他妈点dress。嗯。点at好吧,对,提交这个页面的话,我们就写完了,先看一下效果。回馈。他说什么,他说没有这个页面,看看update customer JP哦,多了一个JP是吧,这块。
06:05
好了,这个值是不是可以显示啊,哎,这就是显示的一个基本方式,然后我们看这块儿写的ABC。是不是告我这个不存在啊,那这样的话呢,我们就可以,嗯,起到一个真正的控制器的作用,你看哈,我先接受请求,然后呢,调用dau这个方法,根据这个返回值的情况来确定最终去的页面,而这里边没有任何的这个逻辑和显示,显示给JSP。那关于model的部分,比方说获取值啊,包括业务逻辑代码呀,在model里面,我我目前的话呢,没有逻辑,那这个存储的话呢,在这个DAO里面这就可以了,这个页面拿到之后呢,下面我们要来做这个更新,那这个页面里边我们需要在form里边有两个隐藏域,分别是顶部。Have,所以叫didn't ID。
07:07
Value。叫。他妈点艾特。快递告。下来还有一个叫old name name。这个get in搞定去update update方法在这呢。获取这思个string ID等于request.get ID string name等于request.getter嗯,Phone等于requestter phone。最后一个。
08:02
The name,然后检查name是不是已经被占用,首先啊,If。说。Name不能是空哈,Old name name。对,E口子笔是不是用E子啊,有很多人还用等号,这肯定不行啊,跟N比。如果要是不等的话,我才到里边去找吧,等的话我就不找了啊说啊。若不相同,我们才来干里边这个事儿,那我去掉一个吧,Long Co等于看DAO点盖。去找,然后if,如果这个值大于零,再来,我就去这个页面。
09:06
Request requestt。去的是这个页面。CTRLCCTRLV。点帮我号这个之前我们先需要来写。CXV。有什么异常吗?哦,这个会抛异常哦,我这个里边怎么了,这个方法我抛异常了哈,这个方法都会抛这样的异常CR。C。喂。点上。好。那这个页面的话呢,我们会显示这个消息,首先写个它吧,说request.thattri message,错误消息是什么?什么已经被占用了,用户名已经被占用,请重新选择。
10:15
Ya name。然后呢,我去这个页面显示,显示的话,我们过我们这块款啊减就是在页面上,然后放款结束啊,如果没问题的话。童装。Customer。等于new partner。Red phone。还有一个别忘了点site ID你是不是得写上啊,因为这个是改了呀。ID in,哎,同学说这个ID你为什么不用拆开呢?这个是不是通过表单过来的呀?啊,这个相对而言比较安全,不会出现像我们这样直接恶意更改的情况。
11:11
Address。没写是吧,嗯。喂。看点,Update。没有写这个方法呀。阿通do来。嗯,比如忘写这个方法了是吧。我只有一个save方法。C方法是不行的,CTRLT。
12:02
我把忘写了,把加上。Public avoid update。保存。这里边儿加上这个。方法。你的色号等于。Age。S name等于问号。Address等于问号,等于问号fair或什么呀,ID等于问号对吧,然后的话呢,我叫一个update。方法。Circle就是这个点,Name。
13:01
customer.get customer.phone customer.getd。忘记了刚才啊,回来回到我的这个里边。Update。在这儿呢,修改。Update customer,然后直接response,点我去的是点OK看一下效果。回退回退刷新。哦,我先去改一个让他成功哈。
14:00
爱他,归谷发现了。坏了,哦,不行是吧,对啊,我跑这个页面是没问题的,然后我们先这么写来写个XYCAABC再看啊这个时候怎么了,它是不是更新成功了。看见了吧,这个时候更新是成功的,就是我整个更新这个功能是没问题的,你看这不是XY的ABCABC吗?再写写成这个艾硅谷,艾硅谷现在已经没有了哈,我更新是可以成功的,但是我把这个update我改我改一个,嗯。改了他,我改于上海。好了,在这update,你看这个也可以成功,那哪个没成功啊,Ctrl c update我怎么写这么写。
15:12
这个时候没成功是吧,我改这个艾特硅谷这个这个事很有意思。什么意思啊,大家看爱的硅谷那个分布,它有足够的这个呃价值让我们研究,为什么呢?我们在数据库里边去写等的时候啊,这个字符串它不分大小写。而用equals笔,它分大小写,懂我这个意思吧,看这个,看这个,我刷新一下这个。刷新一下,注意是它好了,我复制一个我。行。From,这个是买SQL的问题。Accustoms。
16:03
Where name等于看这个它的硅谷,这个的话呢,肯定是可以查到的,我们知道。的确是有它,好了,我写它,注意里边这个哈艾硅谷。再来。这是不是也能查着啊,看见了吧,但是呢,我这个小写的爱的硅谷跟这个E口子并不等吧,所以说出问题了,这个问题出在哪呢?这个问题跟我把这个改成m Mac出的问题是一样的,这就行了呗,好吧,那这个问题是什么呢?他说啊这个吧,87行,87行,这个87行的话,我刚才已经看了啊,87行是什么呀。我卡get ID这个值是,呃,这一行出了一个控制异常,为什么会出啊。
17:01
为什么会出啊。我们回到这个页面,在。在哪呢?在这在这,你看你才一上来是不是就获取了一个卡通,你才一上来获取一个卡通的话,但是问题是我现在这个从哪来的呀,我现在这个我是不是从出错那块来的呀,这个时候我没去查数据库吧,导致了这个家伙是空,所以说啊,你没有办法它是空嘛,你获取ID的话也获取不着,就是这个原因。嗯,所以说你还得处理一下这块是空的问题,那怎么写呢?这样写我要放的无非是这样几个东西,一个是啊形接string吧,String ID等于now,一个是string old name等于now,还有一个什么呢?还有一个个。Name等于now,还有一个string address等于now,还有什么?还有一个string放等于,那OK,然后的话呢,我先来获取它,不过呀,这个家伙有可能是空customer不等于空,不等于空的话说明什么?不等于空的话是不是说明。
18:26
它是从这来的,从这来不等于空很正常,不等于空的话,这个值我就一个一个给它附上。回到这个里边来,不等于空一个,一个负ID等于customer.that ID加个东西吧好了,然后呢,Old name等于点get name。Name等于name。
19:00
不是空这个数就可以写address等于customer.cat address还有一个。等于大同点get写完好,如果是空呢?是空啊,不能这么写,是空这个ID应该等于啥呀?等于什么呀,我提交之后又打回来了吧,那我提交之前表单里边是不是有个ID啊,这个时候就是request的点get。ID。然后呢,Old name等于request点。Name,然后name等于name也是他request点。
20:03
还是他再来address跟phone。Address跟phone有问题,ID的话呢,这样获取的,它这样获取的这个不对哈,哪个呀,这个应该是old name,就是我们显示的话就是那个老的,而这个是新的。点再来。Yeah you。对,很快。Request点什么呢?放写完写完这块放的值呢,是ID。这个是。Old name。
21:01
再来,这个是name。这个是address。这个是缝,这个时候的话呢,就没有这个问题了。好了,再看。再看,呃,我先做更新S硅谷,我点MVC吧,CTRLC点它或者看。是不是告诉我Mac已经被占用了呀,这个改为以前的只注意哈上海五。要二五艾特硅谷改成MVC。看这俩是保留了这个改为以前的了吧,好了,我就用艾特硅谷。艾,对五,这个改了吧,这就是我们最最终,呃,最终的实现,那刚才最先中点问题是什么问题呢?我要这个把这个改为小写的X。
22:02
硅谷。再看这是奥数网,它的硅谷已经被占用,请重新选择。这个还没有写完。为什么会出这个问题啊?为什么出,为什么出这个问题啊,就是因为我们使用字符串去,我们在so里边比,我怎么比的,我是不是用ES啊,这个ecos是不分单号写的,但我在买circleq里边,这个啊,不说了啊,在这个里边是分代要写的,这边买S里边的不分,所以说比较讨厌,怎么办呢?我写个equals ignore case就可以了,这个时候保存就不会有这个问题了,刚才那个比较恶。第一把我们遇到这个问题啊,的确是有点儿闹腾啊,再回来再看回退回退好看这个。
23:00
来,我写个小写的at at回顾。这个时候呢,就可以改了,这个时候整个的这个就没问题了,那以上的话呢,就是我们关于修改的这个整个的流程,这里边出了一个小插曲啊,两个小插曲啊,就是刚才我们用搜狗L语句,这买circleq里边搜狗L语句去比两个搜Q串的话,它不分大小写,而我们用ES去比的话,它分大小写,所以说最开始的时候的话呢,出了一个异常。排了一会儿,此外等到GPGP里边来过来看这,哎,这个里边我们确定这个值的方式的确是这样,我得先来判断这个卡通啊是不是空,如果不是空的话,说明我是从哪来的,我是从update这个链接来的。那这个时候的话呢,我这些赋值应该是从这个卡来赋,如果这个是空的话,说明什么呀,说明我是出错之后给我返回的,什么叫出,什么叫出,出错之后啊,这个叫出错之后,哎,这个时候回来的,所以说这个时候呢,我们应该利用update,哎,我们应该利用这个request get permit的方式为ID name name address跟phone赋值,其中其中ID这个值请求域的呗,ID address phone都是请求域的,Old name跟name也是请求域的,不过这个name取的是o name吧。
24:39
而不是心值,我们这个我们在讲service的时候呢,已经说过了,哎,这块有一个需要注意的地方,整个OK。
我来说两句