00:00
然后呢,他看在市场活动的CTRL再加上了,只要是只要是设计好了代码就太好写了,然后呢,这个地方CTRL才能上法public,你看你不管写多少多少个CTRL的方法,全部都是public,这都是死的。你写这样写,别人写也得这样写是吧?这都是死语法都是死,然后呢,这个地方反回值,返回值是什么类型的。什么类型的?对object的类型的,因为我们将来要访问一个杰森do,所以object类下边双网名C艾这个发网名你随便写,但是建名之意就这样了,好,然后呢,他是ctl层方法,那要给他分配一个URL,将来他来处理来自客户端的这么一个请求,那这个URL我们说不能随便写,要和他处理的资源路径保持一致,他要处理的资源路径就是说这个方法将来响应信息要返回到哪儿去,返回到市场活动主页面,那它这个资源路径要和市场活动主页面保持一致。
01:04
那保持一致的话,那市场红主页面它的路径是从视图解径往下找沃克奔驰activity,所以我就直接写了,那这个地方来个以斜杠开头,它就代表应用的根,然后呢,这个地方来个沃奔驰下边艾位,这是它的资源的路径,下边资源的名称要和方法名一样。然后呢,后边带个叫do,知道吧,这样的话,这个什么request mapping我们就写好了,写好之后那我们继续来写这个方法,那这个方法将来要返为一个接线字符串,这个地方加一个注解response包,这都是这都是死的这语法,然后呢,在这个方法里边定义形态来接收客户档传输参数,那定义哪些形态,就是表单里边这些参数每一个都对应一个形态,这里边总共六个,再加隐藏域里边的ID等于七个,按理说你在这边定义七个形态来接收客户端传单品,但是我们又一分析说这些参数我们将来要把他们分成一个实体对象,因为他们本来就是属于一个实体对象,所以我这个地方不准备定义呢七个形态了,就定一个实体类类型的,这么一个形态,在接收餐数的同时就给我封装好了。
02:18
所以那这个地方我就定义一个实体类类型的这样就行了。那这样的话,当我们说这些参数传过来之后,直接放到这些这个实体类里边去了。好,这样的话我们就可以了,可以完了之后大家我们又一发现什么,又一分析又一发现是吧?对前面只传了七个参数,我们这个参数域里边呢,是不是需要几个参数,这样对九个参数这俩是不是没有,没有的话可以大什么自己生成封装里边就行了,所以下边我们进一步封装,封装参数,封装参数那就往这个实体类里边再封装参数,封装什么有一个edit time I time是不是系统时间呀,对,系统时间我们都转成字符串,然后呢,以字符串的形式保存的,那就来个form date time。
03:11
这时我们转成字符串,知道吧,把当前系统实间转成YYMMDD那种那种格式啊,我们这个既有年月日,又有十分秒就掉这个了,然后呢,继续来edit这个地方来个edit buy,说有谁修改的edit buy是不是当前用户啊,当前用户,那要获取当前用户,那当前用户一定在session里边了,因为他既然能修改,他一定登录成功了,他如果没登录这个地方,压根他就不能修改,所以他一定登录成功了,那登录成功了,他一定把那个用户的信息放到session里边,所以我们从session里边拿到用户的信息就行了,那拿用户的信息,那我要首先拿到session,拿session,直接注入session就行,然后呢,从session里边来获取当前用户就行,那获取当前用户这个地方来个session点叫get a cap这个K,我们以前放的时候叫什么,这个地方就取的时候也用什么取。
04:10
对,放的时候我们起到一个常量,那么取的时候,对,也是从这根据这个常量去取。然后呢,这个地方来得到U,这个地方一定是能得到U,因为如果得不到的话,他压根就不能做修改,就已经让他跳转到这个登录页面去了,我们做了登录页证了看,然后呢,在这边强转一下,这个是user侧拿到user,拿到user侧,把user侧信息保存这里边那优侧的信息,我们这个地方,我们根据我们以前的设计,这个iy是不是应该保存这个用户的ID啊,对用户的ID它是个外键,引用用户表的主件,把用户的ID保这你们老师为啥不用name name不唯一啊,Name我们说name一个是不唯一,再一个name不稳定啊,万一这个用户改名了呢。
05:01
那你那你这些都得给他改,所以说什有业务含义的字段中不稳定,你要保存什么,你要让他引用一个有业务含义的字段就不行,所以他只能引用一个主见,主见是稳定的。所以这是我们说的这好,这样的话呢,我们这个参数就封装好了,参数封装好,现在我们已经来到这一步了。第18步做完了,下边第19步了,第19步就是调用service方法,保存修改的市场活动讲了,所以我们这个地方继续了这都是设计好的,这然后调用service层防服,然后呢保存修改的市场活动。啊,修改的修改的市场活动,然后呢,这个地方我们来一个那调service法,这个地方来调了service艾,Service调哪一个方法,咱们刚刚写那个方法叫C艾这个方法,然后正好把分常好的实际对象了。
06:05
然后呢,在这个地方得到一个影响结果条数知道吧,好,那这样的话,现在我们已经写到这来了。CTRLL拿到影响记录条数,下边根据处理结果生成详细信息,那根据处理结果生成详细信息,那我们说这个是写数据修改写数据我们要考虑写成功了还是写失败了,看是不是报一程,所以我们这个段方给它加一个TRY,开始只要是写数据,我们都要考虑是写成功了,写失败,因为他有可能引起别的数据的一些变化,有可能会失败,就这了,查数据其实无所谓了,查数据不改数据无所谓了。所以这是写数据,那这样的话,大看我们这个地方,大家看这样的话,我们不管成功了还是失败了,那么他将来都返回这么一个阶层,我要返回这个阶层,我要把这里边数据都放成一个加构对象,那分装一个什么样的加构对象,就是咱们封装好那个叫什么return body。
07:07
叫return包,就return object,然后呢,这个地方来个return object等于六一个return object知道吗?然后呢,大看我们把数据分到里边就行了,那把数据分到里边,那就看看成功还是失败了,那如果没报异常,没报异常也不一定就一定成功了,那就看看影响技术投入是不是大于零,大于零我们就认为成功了,那成功了,来一个set封装起来code等于成功了,Success contains.success。那只返回它就行了,二如果没报异常,这个影响技术条数是等于零的,等于零也没改成功,没改成功这个地方也是改失败了,点side后,然后呢,这个地方来一个contain。点,然后呢,费用啊,那失败了,他就访问失败的原因,给他一个提示信息,那我这个提示信息不可能太具体了,那我们这个状就是系统的,请稍后通知这。
08:10
这事我们说没报异常,那报异常了,报异常肯定就失败了。这样吧,这时候啊,这样,那把这些参数都分上,把这些相应信息都放到对象里边,直接把对象return上就行,然后呢,直接把它return这。这样的话,前面加上伪次方,波自动转成阶段字符转方回来。好,这样的话,我们这个controller就行了。啊,那CTRL写完了这一个流程的后台就写完了,后台写完了,下边我们就写前台了,写前台的这些代码了,那我们说这。
我来说两句