00:00
我们来看下一个功能修改,我们首先的话呢,把这个思路捋一下啊,看怎么修改的,我们还是来找他。修改先查询,然后点修改,大家看我要点修改的话,是不是得先来到一个修改页面啊是吧,然后呢,我可以改,比方说改成八。这样就成功了,改了哈,所以说修改这个流程呢,是这样。修改怎么改呢?先显示修改的页面在进行修改,所以说的话呢,这里面实际上有两个操作,一个是获取某一个信息。
01:13
获取某一个卡信息,然后再进行update,先显示显示实际上是个什么操作呀,是一个get操作。或者说这么写吧,是一个操作,而修改呢,修改是一个。这样写。那好了,那于是我们看吧。看哈,我点某一个过来好了,我点到这块的话呢,我怎么知道我点的是哪一个呀,我们是不是也要加ID呀,是不是,所以说的话呢,你先需要有一个ID,这叫获取,获取,那么在我们这里边对应这个方法呢,就ID。
02:01
编辑在这呢,没用的,还有两个方法啊,一个edit,一个update,所以说我们先需要来考虑这个超链接怎么写。Index过来。看这吧,叫ID,点问号ID等于。点get ID,这是超链接。C、保存。好,那是看吗?我们看看第一个显示修改页面,第一个超链接啊,对吧,超链接长成这个样子好了,这个写完这个写完之后的话呢,这个我们到哪了,是不是到这艾的方法了,艾的方法大家说这方法都干什么呀。
03:16
获取ID,我直接写了哈,然后呢。调用O的方法获取ad对应的卡通对象吧。来,你看看这来。看这个啊,哎,我点的它,我那我来这个页面的话,我这个信息是不是从数据库里边来的是吧?这个信息需要来源于数据库,我们这个里边的话有点特殊哈,我这个字段是不是少啊,我字段一共就三个字段,那实际上开发的时候呢,我显示的可能是三个字段,我一改的话,可能需要改好多个字段,懂这个意思吗?
04:09
比方说。上那个新浪微博童刚。我点吧,有没有修改啊呃,账号设置你看我要是点它的话呢。嗯,我这块这个数据呢,是有是有什么呀。是有限的是吧,我要是点这个的话,我一改的东西就多了,账号设置看修改这里边什没有男和女呀,都得改是吧,包括什么生日啊,情感啊等等等,反正需要改的东西好多,哪有情感都不情感状况嘛,感情状况,性对性取向这两个都可选,现在啊行吧,好了,说什么意思呢,就是说我们在这个页面呢,我们显示的可能是部分的,但是我一改的话可能很多吧,哎,所以说你需要用这个ID把这个信息查出来,我们还是在这里边写吧。
05:27
步骤第一个。获取请求单数是ID吧?第二个要用customer DAO的,应该有一个get的方法,点get这个方法。获取和ID对应的对象三好四四是什么呢?我需要。
06:11
呃,响应一个页面想要哪个页面呢?我们首先看这啊,在这目前我们看这个页面跟添加那个页面是不是好像啊,所以说我直接响应这个页面。我一会儿再汇总吧,想要这个页面的话呢,有点麻烦我们展示写个新的,一会儿的话呢,我们再想应这个这里这里面啊,比方说update。在GSP页面好了,我们看这个时候这种反应的话,应该是本发还是同镜像呢。回头了,你看我这个页面,我是不是得写示详细信息啊,好了,这详细信息从哪来的,是不是我这个查的呀,所以说所以说卡通,所以说是什么将。
07:14
放入request中,那怎么样,这应该是转发吧,转发。OK,这个写完好到这块之后的话呢,就是这样的几个步骤啊,步骤这边我就不我就不详细写了,链接ID的方法看看。不是啊,完事。这样的话呢,方案写完了,然后是哪个,然后是这个JSP页面。大家说我这个GSB面我需要写什么?到这页面过来,首先呢,我要考虑我在这个页面上需要写的这些信息吧,有名字这个和它,那我我来问大家,那这个时候比方说就是这个页面啊,这个页面这个OK,这个OK,这个Y6怎么写啊。
08:18
你外流值你得写上啊,Y流怎么写外流值,我是不是已经在这个里边,我已经在request里边放这个卡通对象了,那我在这个页面上,这不把这个对象获取出来,然后调盖的方法进行显示啊。OK,好了啊,获取页面上。获取请求域中的。Customer对象要用对应字段的get方法来显式值填出。
09:02
这是一个,就是其中的一个,那老师还有啥呀。我只显示了下一个问题,下一个问题你看比方说这个吧,是吧,我1.3米的,你得告诉我,我修改的是哪个卡嘛,比方说我把这个改了啊,我把这改成把这个改成值了,我改的是谁呀。我怎么知道改的是谁啊,这个时候我这个一改,这个也改,这个也改,你完全跟数据库里边对应不上是哪条记录了吧,都对不上,这个时候怎么办,这ID在呢?ID在哪呢。看ID在。这我们得通过一个隐藏域的方式来保存要修改的卡通对象的ID,你要是不用这个隐藏的话怎么了,我在这个页面上,比方说我没有藏域是吧,我一点修改,我是不是完全不知道。
10:12
我要改的是谁呀?懂吗?所以说必须有一个隐藏域,什么叫隐藏域啊,它也是一个,跟我们这个name啊,Address啊,Phone啊一样,植物看不着,我们一点提交按钮的话,它也会提到so里边,这就叫隐藏语,OK,看着哈,需要使用隐藏域。需要使用隐藏域嗯来保存要修改的他对象的ID必须有它,没有它的话呢,就很麻烦。第九它因为没有它的话怎么样,我就不知道我要改的是谁吧,那写的方式的话呢,应该这样写。
11:09
来啊,这样写完之后,这个值应该是什么呀,这值应该是。不是卡了吗?点get ad,那是它好了,我们说一下隐藏语。来关于隐藏域,和其他的表单域一样。可以提交到服务器之。在页面上显示就这么一个区别,此外的都,这就叫隐藏域,哪块呢?这儿呢,Have。
12:06
平常语好了,那这要是OK以后的话呢,这个显示就完事了啊,那下一个是什么呢?下一个是。我点下一个,我们看点出这个完了,那我要干啥了,我要进行修改了,来修改操作。修改。好,那这个要是说的话呢,再说一个吧,我提交到update点度,别的不用。好,修改修改了再换一页吧。删掉。修改超重修改抄作,大家说修改这个步骤应该是啥样的?
13:04
第一步。修改获取。请求参数有什么呀?ID有吧?提过了吗?Name address好了,第二步。获取完之后的话呢,我肯定还需要对。Name进行验证吧,诶这个验证有点复杂。什么叫复杂呢?你说我验证这个名字是不是可用的,我们想跟以前那个验证方式是不是一样呢?啊是一样,那好吧,那我们也也这样来写,叫什么调用,我们我们把这个我们还是参照这里边来写了啊到这个方法里边,这个方法叫update过来过来好。
14:03
我那个刚才写了一个爱的方法在这。Can you see。第一步有一个ID,好,第二步,第二步我来验证这个内是不是可用。我们看。变成什么呢?第一个说调用这个方法,看看是不是存在啊,那我调完这个方法之后呢,我们发现什么问题啊,调一下我看看这个2.2。CTRLC怎么写的?我说我看一看这个值是不是大于零,如果大于零就不行,是这样吗?是这样吗?为什么不是这样啊,因为我本身这个名字就是麦克十,我这个名字我没改,大家懂这个意思吧,这个时候我拿这个名字去查,我发现数据库里边是不是的确有这个名字啊,但是但是问题是现在的话这个名字可用吧。
15:14
懂我的意思没有?所以说。这么整不行。我再说一遍啊,就是说如果我这个名字要是没改的话。那我拿这个名字去查,数据库里边是不是的确是有一个记录啊,但我这个名字是可用的,我名字没改,但是这个名字要是改的话,数据库里边要是有一个那一样数不行啊,哎,所以说这个里边的话呢,这个测试的方式啊,跟以前不一样了,不能这么测。不能这么说,对,加一个方法可以,你加一个方法的话,你得去写一个什么呀,你得去写一个这个呃,缺口写一个select,或者是往白的说,就是我用这个ID把这个名字先获取着,把以前的名字获取着,把以前的名字获取着,然后让新名字跟那个旧名字去比一下,如果这两个名字要是一样的话,我就不用查了吧,不一样的话我再查可以吧,再说一遍,我用这个ID的话呢,先把数据库里边,数据表里边那个名字查出来,然后比这个表单传这个名字跟ID那个名字是不是一样,一样的话。
16:31
这个方法就。这个方法就不用叫了吧,如果不一样的话,再叫他吧,这个可以,但实际上的话呢,还有一种更简单的方式,怎么简单呢,我可以在这个表单上。这个里边怎么样,我把这个旧名字啊给他也提交过来,这个时候的话呢,我就减少了一次查询数据库,懂这个意思吧,这个时候效率更高。
17:05
就是说我有两个隐藏语哈,一个是放ID的,一个是放这个old name的以前的name的,然后你提交的时候呢,我不但要提这个新的名字,我还要提以前的名字,然后我让新名跟旧名比一下不就可以了吗。这个思路能听清吧,那于是呢,我们这块再写一个。在这儿。这不要了啊,这个我一会儿写吧。在这说使用隐藏域来保存。Old name就是先前的老的名字,改的方式也是这么写。
18:06
这个名字呢,叫old name old name这个叫该name。唇回到我的这个里面来。还需要获取一个O的,OK,那这个时候比的话呢,就不一样了,这个时候怎么比啊?是不是可用2.1这么写了,2.1先比较M和后的name是否相同,若相同说明什么name可用吧,OK,若不相同,来叫他姆。若。若不相同,则要用这个,这时候叫没有毛病了吧,它不一样,那这个新的,那我就叫它吧,不大于零,想要这个页面,我目前是叫update customer。
19:12
哎,后边的步骤都是一样的,我们需要通过转发来实现,因为我也需要后边这个看看。包括回县都一样。啊,这个时候呢。在这个页面在。这个页面要显示一个错误消息用户名,这个已经占用了,重新选择在request里边放一个它页面上通过它来进行显示,一样一样的,OK,好了,那表单也需要进行回显。
20:00
快。也需要回显,回显的方式呢,跟以前的方式是呃一样的,这里边我们需要说一个。需要说一个,需要说一个什么呢?这个表单回显跟刚才那那个表单回显吧,它有点不同,不同在这我回写哪个。大家看一下啊,再看一下来,我点UPDATE8,注意我把这个上海的改成上海直。这个呢,我改成六六。数据库里边另外一条记录叫什么?Customs。小静不止看这个啊,诸位。大家看这什么情况,我这个显示这个我是不是显示新的呀,但是这个还是以前的吧。
21:03
懂这个意思吗?这个时候的话呢,我这个address跟phone显示新的,而name显示老的。就这个你不用显示新的,这个要是也显示新的,导致信息我就丢了啊,所以说这个显示这块的话呢,有一点复杂在这。看怎么显示的呢,说呀。这个灰险,这个我具体我就不我就不说了,其中。最高。Address。显示提交表单的新的值,而。而什么呢?这个name显示。Old name吧。而不是新提交的有这么一个要求,然后这个时候方法结束完了啊,这个完了之后的话呢,继续。
22:10
如果要是。通过呢,通过的话怎么了,通过的话我就给你进行这样的操作,CTRLC,如果通过的话。我通过。封装没问题,然后呢,进行什么呀,是不是update方法,Update进行更新,执行更新操作啊,然后注意哈,我这个时候也是重定向在哪呢?我想马上看见,结果我去的是宽不,然后这个时候我们用的是重镜像,哎,整个这个就写完了,这就是我们的这个叫什么呀,叫update方法里边的代码。
23:06
啊,说的方法,方法这个的话呢。去吧。我们都拿过来有点费劲啊。GSPGSP这个页面呢,应该是什么呢?叫update GSP。啊,这个页面上会有一些讲究哈,这页面有什么呀,就是回显的问题,页面上说应该是有几个是吧,第一个叫隐藏域,隐藏域的问题,第二个回显的问题,问题我们提出来了啊,大家可以考虑一下如何来进行解决好了,这个这完事的话呢,我们后边还有一个,还有一个这个小要求是吧,那我们的new。
24:07
点。customer.gsp哎,咱们几乎一样能汇总到一个页面吗?哎,就是我们这块说的整个修改这块的问题,以及大部分解决问题的方案我们都给了啊,这块的话没给,大家可以尝试着先来写一下,遇到问题的话呢,下午我们一起再说。
我来说两句