00:00
下面呢,我们来看这个修改,修改是我们征商改查里边最麻烦的一,因为修改需要这几步啊,首先你要把那个表单显示出来,然后再改好了,修改的话呢,应该是在一个。修改下来,这个是不要的。实际上是什么呀,我信的话,我是在掩护他呀。是吧,去的话我就去那个input这也不要哎,ID你不要显示那个页面嘛啊input注意什么呢?是不带了一个ID啊,是不带了一个ID啊来到这里好了,我们这里面有ID吧,这个ID能被设置进来,然后去找引啊引步的这块是这么写的。
01:17
那现在的话呢,我需要怎么了?我需要到目标页面进行表面回显吧,怎么回显啊,图应该是在直站的占顶有一个对应的对象吧,对象的属性刚我们表达的这个嗯,字段值一一对应吧,所以说我们为它写一个对应的方法方法并input来model哦,写一个它if步,如果ID不等于空的话,ID不等于空的话,那我就把model等于employee service.get你写的一个方法呢,还译一个ID过去,我从数据库里边把这个对象获取出来,然后你再进行推线,好的写这个方法大然。
02:18
看了这里面也没有了啊。用ID获取的这份简单public employee ID,然后return get session.get包点glassd了保存,这完事,Service employ do点保存再来啊,这个写完了,这个是怎么了啊,我说呀,我说呀,我在这个眼部的方法之前的话呢,我这个model都是指于谁啊,是不是从数据库里边取的那个对象啊,这个家伙是在值的单顶吧,然后到。
03:22
高页面它就可以进行自动的回响,OK,看效果。啊,这个是不行的,这个还这样,因为这个什么这个ID图是空啊,往回退点它啊轴转和一个看着回血了吧。不过这个会议的是不是太丑了呀,看到了吗?这个这个是可以的,这个是可以的,人事部也没问题吧,大家看这个确实啊,都是人事部,我回头可以改一下人事部,这个可以,这个可以,这个生日这个怎么翻译一下,这都太丑了啊,生日为什么会这么丑呢?Employee action啊这里边的话呢,这个是model,我们来看一下目前直占占顶的情况,我来写一个啊,这块写一个大家看一眼S吧,过来刷新,大家看直站占顶的是不是的确是这个employee啊是吧,呃,这块这个birth是呃,98年12月12号,这是什么呀,创建时间吧,也有哦,这的确是。
04:54
我们要学的东西last name,我底下这是什么东西啊,Employee,哦,这个是employee action employee action里边也有一个lastname这玩意,不用管它,这个employee OK,嗯,这个拿上来了啊,98年12月12号蛮好的,但是网上一显示的话不对,但是我们基本上这个流程摸出来了,可以正常的进行回显,那下一个问题就是我们如何把这个日期变得友好一点呢?这样看着太丑了,怎么样可能变得友好一点?
05:37
啊,这个时候无非我们是可以去改两个地方,一个是啊在这块我们去改它这块,哎,我们想想办法,还有一个的话呢,我在进行回显的时候,咱们不是昨天写了一个什么,不是写了一个转换器吗?是吧,这个转换器起没起作用啊,你看如果这个类型是啊,From to string吗?是date.class对date是YouTube哈,然后的话呢,我就一下,那它起作用了吗?啊,我打一个断点,因为这个时候是怎么了,刚好是从从哪啊哦,这个不应该打到这啊,就是from string吧,我应该说的是to string。
06:31
啊看to应该是什么呀,我是一个date,我要把这个date转化成一个string性,应该是在这块去调这个方法,它起作用了吗?那我这两个断点的话呢,都加上,我们看第一个起密器起起作用,你看我们第二个起密起作用,其他论点先去先去掉。哎哟,好多呀,回来这两再打上走起。
07:14
第一个怎么看呢?第一个得这么看,添加的时候看看着哈,我写一个,嗯,CC cc163.com可用了哈,1990,嗯,11月11号销售部找一个。有。坏了,这个的话呢,也加上了是吧,我这个启动是是第bug模式,发现咱写的这玩意了,没好使,哎呀,这个也没走,这个也没走,那就说明这个配置文件写的不对,X work conversion.pro里边是Java u two.date等于我这个转换器,那只能哪块错了,只能是这个文件明写的,或许有问题,那我们查一下吧,这个文名应该叫啥呀,我们就不查文档了啊,我们直接查PPT,这样快一点抓过来冲刺不是画到目标类,应该是起作用的哈,我们看到他。
08:43
没起作用,这就说明我们写的不对。我不翻转换。
09:04
类型转换。看叫X conversion,我写我写错了是吧。CTRLC过来写错了吧,SN吧,看是不是S啊,这块是不是P呀,就差了这么一个事,重启再看,那同学会问,哎呀不对呀,你卓为啥好用啊,因为我们刚好是中文环境下吧,它会自动的转,这个时候再看了,好,我点edit你就知道了。是不是起作用了呀,是不是来了呀,看见了吗?这个时候是能进来的吧,这个时候过看页面是不是可以正常显示了,是吧,所以说这个时候这个转换机才真正的起作用,昨天就差了个啥呀,差把这个字母给写错了,因为conversion不是T是S好吧。
10:23
行,这样的话呢,这个页面可以帮我成功的显示上,而且这边显示是销售部没问题哈,这个显示的就是。先挂了。拿掉吧,这块显示的就是呃人事部嗯,蛮好的啊,显示OK,显示OK,显示完成以后的话呢,这个页面上有点讲究,有什么讲究啊,我要求这个是不可用的是吧,不可用的那我们close other一个过来来,不可用的过来,你怎么判断这是不是不可用的呀,这个吧,这个吧,你你判断一下吧,S如果什么呀。
11:16
如果ID不等于空的话,说明什么?它是一个修改状态吧,这个时候是一个修改状态,写成一个able等于,否则。S,要否则是个正常的使用状态这样写,而且在修改的时候,你还应该放个什么东西,放隐藏语放什么呀?放ID吧,你告我改的是谁呀,错了name等于ID,再看刷新。
12:06
好了吧,右键原文键过来往下翻6S第八个看看有了吧,好了,这个时候我要是再提交的话,它会怎么样,你我改一个啊,改一个abcd,改个12月13号改一个销售部,大家说我提交的话还会怎么样,先看结果过来看ABC哈,放心都是看四号吗提交,哎呀在这呢吧,貌似也能成功一点,哎,刷新坏了,这个是空了吧,然后呢。
13:01
看这创建时间是不是更新成当前时间了呀,7月23号,因为我们昨天创建怎么23号09:41:36,肯定是最新的发现这个没了,这个没了这玩意儿不行啊。就是说这个没了,这变成最新的了吧,但是这个更新好使吧,这个更新了,这个更新这是不是也更新了呀,有部分好用,部分不好用,那想想为什么会有部分不好用呢。看我们的代码在X里面来去找那个save方法,这这。那你就得看了,看什么呀,这玩意就不一定设了吧,是吧,于是写一个吧,如果如果。ID不等于空的话啊,等于空,如果ID等于空的话,你在干什么呀?
14:09
该设置它吧,是这样吧,ID等于空说明你是添加吗?ID不等于空说明你是什么呀?修改吗?好了,这个写上了,这个写完之后貌似只能够改变这个状态是吧,但这个还改变不了吧,那这个会怎么样呢?来我们给它,我们给它重新起一下看看效果,来找一个来我们还是用这个啊abcd来这个时间呢,我随便改一个。保存刷新。好了,注意是abcd哈,再看好abcd,注意这个时间是6月30号,好了,我改成个12月12号,别的我不改了啊走。
15:09
看这个刷新空空是吧,为什么呀,为什么会这样啊,这个就很值得研究了,为什么会这样,为什么呀,因为猫狗怎么了model,你看我为这个主义的model是不是一个新的model,是不是一个新的model啊,既然是一个新的model啊,那么我从前端传过来的这个请求参数有哪些?复制看他。CTRLV仔细看啊,这个我再写上。
16:04
6月30号。保存刷新好的啊,ABC里面没上去。保存放心,好的下边看艾。现在呢,我要点提交了,我把这个什么呀,开发者工具打开,我把这个改成13,把这个改成研发出,把这个清掉,大家需要注意看我真正提交了哪些参数哪些呀。123还有ID吧,是不是四个呀,走一个它是吧,这个来请求参数几个,123是这样吧,你只提了四个,那我能够给到谁呀?我能够给到我这个猫猫是不是也就四个呀,其他的都是空啊,默认值吗?你看其他的。
17:16
Lastname跟great time这不是空了,那我当然我就这么改了,我当然我就这么改了,同学说这个你不这个你不是提了吗?这个我现在我是不是第C,第C就就没提吧,第C在哪呢?在这就没题,哎呀这怎么办?对所以说的说的很对哈,像ID一样,我把这个lastname跟。这个,呃,Create time加隐藏语可以吧,可以吧,这个问题是可以解决的,这种想法挺好的,来,我们写上它last time。
18:07
Abcd。30号保存再看啊,好的,12月12号直接走了啊。走,好用吧,过来刷新一下12月12号啊,挺好的吧,好使一种方式是加隐藏域,但加隐藏域有一个什么缺点呢?嗯,第一个就是你会使这个页面变得冗余一点。第二个,如果我们需要加隐藏,用这个字段很多的话,这是不是很麻烦呢?懂我的意思吗?就是比方说我们在进行注册用户信息的时候,我们需要填的这个信息很多,但让你改的地方啊很少,你这个时候你定要加隐藏玉的话,这隐藏隐藏玉就比较好多吧,这也是一个缺点,那么我们还能够怎么办呢?值得说明的是,这样的方式好用哈,而且写的不错,看的不错。
19:22
但是我们还能怎么办呢?哎,通过添加隐藏域的方式,把这个为。提交的字段值提交到服务器,把未显示吧,OK,这个的话呢,我们可以有效解决没提交那个的问题,一种方式,还有什么方式。
20:04
往这看还有什么方式,你看我这块我是不是搞了一个new啊,如果我这块要是从数据库里边获取的话,是不是也行,嗯,看一个图,我以前上课画的一个图,看一眼。我在是MVC里边画的好,我们看我们在对数据进行修改的时候,有可能是这样,我在表单里边啊,只提了两个字段,但我实际上的话呢,我有三个字段,懂这个意思吧,那我如果要是正常找的话,我就把这两个字段给到这,呃,三个字段里边的前两个吧,那这个是不是就是空了呀,然后我一提那就导致着修改两个,同时后边这个是空了,很不爽,就目前这个情况啊,我能怎么办呢?我能这么办,我能先从数据库里边获取一个对象,然后呢,我让这个表单直径射到我获取这个对象对应的属性上,听懂了吗?这个时候我还有一个字段是什么呀?还有一个字段我数没变,但但它是从数据这获取的吧,这个时候。
21:27
也可以有效的解决这个问题,听清了吗?再说一遍,再说一遍。我先从数据库里边获取一个对象,然后表单提交的时候修改获取这个对象的部分属性,而另外一部分属性是不是数据库里边的是不是没改啊,再进行update就没问题了,于是我就可以这样写。If ID等于空,Else不是空吧?Model等于employee service.d。
22:17
看一下。我继续edit。拿掉好了,我们接着看我们提交的信息,这个改为13号走没问题吧。30号没问题吧,回头看他看提交的是不是只提交四个,那是不是也有效了呀,靠的是什么?靠哎我这一块的这一行代码。
23:00
嗯,原理图呢,就在这,我先从数据库里边把这个对象获取出来,然后你再提交的时候,你修改的就是这个对象的部分属性吧,而没修改那个是不是还是数据库里边那个,这个时候这个问题就解决了,这就是我们的修改操作好了,回过头来再看一眼,那service不用改吗?我用的是不是simple update,所以说service不用干,DA也不用改。好的,这块和大家要交代一下啊,嗯,可以根据ID来判断为save方法准备的model是谬的,还是从数据库过去,哎,这也是一种方案,现在的话呢,我们翻过头来来比较一下,从数据库获取这个方式,跟我们前面用隐藏域这个方式,大家说说哪个好哪个好啊,用这种方式感觉麻烦一点是吧,优点是不用查数据库了吧,这个方式呢,感觉哎,酷一点,但你需要查。
24:37
数据库,所以说我们说如果嗯,这个我们需要这个设置的字段不是那么多的话,我们推荐是用这样的方式。如果我们需要在隐查用这个字段很多的话,而且我们还有缓存的情况下,我们推荐使用这样的方式,往往是为了效率,运行速度快一点,宁可麻烦一点,大家懂这个意思吧,频繁访问数据库总不是一件好事,但是要是有缓存的话,这个就可以了。行到这块的话呢,关于这个SSH的c rud呢,就都说完了,我都发给大家,大家看一下,下课休息。
我来说两句