00:00
下边呢,我们通过代码来看一下。首先来修改一下,我这个U里边呢,加一个属性就ID,这样看起来会更加真实D。兔子方法重新写一下。杜子润。不要了哈,这样比较麻烦。我把这个给它移上来。然后呢,我们再加一个构造器。我把这个ID呢,呃,也加上。好的。写完了,写表单。
01:05
CTRLCCTRLV,我们来说一下我们整个这个要求说模拟修改操作,第一个啊,原始数据为ID呢啊是1u name呢是汤姆。呢是come at at硅谷点com,哦,差了个密码吧,密码是123456。后边还有一个什么呀,还有一个年龄12,这就是原始数据,二我们要求密码不能被修改,三。呃,表单回显,然后怎么样模拟操作直接在表单填写。
02:01
天。写特烟天填写对应的属性值,就是说我们就不查数据库了哈,这样一个操作,OK formal。Spring mvc test啊。Model attribute method post,好的,第一个写ID怎么写啊?D,通常情况下是一个隐藏域吧,Type。Hidden name ID value1,然后username input cap name user name value com直接写了哈,而没有用EL也没有上数据库里边获取模拟操作吗?第二。
03:05
下一个应该是input type text name email value。Tom at、硅谷点com下一个br edge input type text name value 12、最后一个input tap summit value summit写完。模拟模拟回写是吧,好了,密码呢,没有我们来写我们的。
04:00
目标方法,CTRLC过来。Public return success,好的,Sit out,看说修改成什么呀?传一个U过来对吧,At a request mapping修改谁呀?加优OK,写完了。找一个瞧一瞧。刷新好的,诶,我把年龄呢改为13,看控制台修改,哎哟。哎哟,这个。这是由session attributes产生了一个异常,这个呢我们在后边我们会讲。在这那现在为了避免这个异常的话,我们暂时把这个注解去掉就可以了,很烦躁的一个异常,后边我们会讲为什么会有这个异常。
05:04
重启。回退。再来。好,我们注意看修改这个里面ID。Email age password是不是空啊对吧,咱说了这个原始数据呢,是123456,你这么一改的话,你不把密码给我整没了吗。这不行。好的,这就是我们说的这样的一个情况是吧,我新创建了一个对象,然后呢,表单属性为对应的属性赋值,有一个值没负,你改不就是这样的吗。那我现在希望是这种情况,不是新创建的了,而是先从数据库里边获取的,写一个方法。Public VO。
06:01
怎么写啊?先加上一个request value等于有ID吗?Required等于false in类型的ID说,如果ID不等于空的话,实际上是一个修改操作吧,是吧?诶从数据库中获取一个对象,这个对象长啥样呢?长这样等于new优点模拟哈模拟。好的。哎呦,这勾不对哈,带ID那个,这个是一模拟的样子,汤姆123456,这应该是什么?汤姆at at硅谷点COM12模拟就这样是吧。
07:01
加U,我们说了哈,模拟从数据库中中获取对象,然后我把这个对象放在map里边。String object map。map.put加上一个注解request。不是吧,Model attribute。好了,再看效果。刷新走看过程,先获取了一个对象,然后呢修改怎么样。密码是不是有值了呀,H是不一样的,诶我们就要这样的一个效果。
08:04
在改之前先查数据库。然后呢,把表单那个属性值赋给从数据库获取那个对象的对应属性,没赋值的就是从数据库里边那个原始值呗,是吧,123456,诶这就是我们这个model tribute最典型的一个应用,好大家呢。把这个例子呢先写下来,我现在暂时先做一个笔记,一会儿我们会来讲实现原理是什么,好吧,我们说有。有at model attribute标记的方法,标记的方法会在每个目标方法执行。之前被spring mvc调用,就是说这个方法呀,不但是这个时候掉了,你执行其他方法的话呢,实际上它也掉了,我们写一个吧,看model attribute method。
09:20
嗯。周琦。我来点个别的哈,随便点一个,你看诶他也他也执行了,看到了吧。好的,大家呢,先像我这样把这个例子呢先写通,你对它有一个感性认识,下节课我们来讲其原理是什么。
我来说两句