00:00
好,刚才把这个服务器启一下啊,现在这个登一把看一看啊,我们今天该做什么。市场活动这啊还没完啊,啊在当前这个列表页上的这个一整套这个周三改查啊,写完了啊,它所对应的是呢,我们在这个。Web APP worker bench下activity的这个index.jsp这张页面,OK吧?好,那现在呢,我们需要做的是点击这个市场活动的名称,让它跳转到这个详细信息页。啊,至于这种跳转我们很熟悉,是这样吧,非常非常熟悉啊,也就是说我现在为了展现这张页面啊,同学们。可以有几种办法。还记不记得那那张图,是不是使用传统请求或者是阿贾克斯请求,是都可以啊,如果是传统请求的话,我应该是先走后台,没错吧?
01:10
回忆回忆,同学们先走后台,如果呢,我要走的是这个啊,阿贾克斯请求的话,应该先到达目标页,从那张图来看,我先走的是那个竖着的。竖着的我代表的是点度后台对吧?好,那下边我画的是横着的,先跳到目标页,还记得吧,如果没有印象就说明回去这张图里面看啊,啊老师每天上课给你总结这些东西,我这每天跟写作文似的,回去你得看的啊,OK吧啊,你不看不行啊,这些东西啊,尤其是这个图相关的这个东西啊好,那么大家注意了啊,我们这回啊选择使用的这种方式呢,请注意啊,我从点击它到跳转它。啊,我选择使用的是传统请求方式,为什么啊,第一个原因是因为大家注意啊,我是从什么呢这张页面直接跳转到了这张页面,是这样吗?这张页面是新展开的一张页面,它不需要做什么局部刷新的操作。
02:08
是这样吗?也就是说啊,它完完整整是这样,页面是这样吗?刷出来的是这样吗?好,这是第一点啊,那老师那局部刷新也可以是可以啊,还有第二点原因啊,咱们这个第二点原因在于什么呢?这个我们之前一直使用的是这个阿贾克斯请求,是这样吗?啊,如果还用阿贾克斯的话,有点写腻歪了,我感觉我相信这个,如果用阿贾克斯请求解析杰森数据来讲的话,你看杰森杰森这些数据往这上一扑,相信大家都没有问题,OK吧,好,所以说呢,我们也该这个复习复习这个传统请求了,传统请求使用request预对象搭配这个转发的这种形式,OK吧?好,第三点原因啊,在这张页面上啊呃,我们要操作这个备注相关的这个模块啊,那备注模块是与我们的这个市场活动模块啊,其实是有关联的,OK吧,好,所以说啊,我在备注模块上为了方便。
03:09
的取得市场活动相应的信息。我使用什么呢?使用EL表达式的形式来取,这非常非常的方便,最方便的一种形式就是EL表达式,OK吧,好,所以说啊,是基于这三点原因啊,这个我们选择使用的是这个啊。啊,传统请求方式可以吧?好,当然了,我还是那句话啊,你直接先跳转到这张页面行不行,然后这个页面加载完毕之后,自动发出一个阿贾克斯请求,根据ID取单条,这单条数就拿过来是不也行啊,接身数据网站上一扑是也行啊,没有问题啊,好,那么既然我们选择使用的是传统请求的方式呢?那么我们从点击这个市场活动名称。到跳转到我们这个详细信息页之间,要不要先过把后台呢。
04:02
需要吧,是不是需要啊好,咱们那张图的上半部分那个图先过后台传统请求对吧?好诶点击它先过后台,后台根据ID插单条,把单条数据保存到request当一个转发,诶是不是到这这些全是一表达式取的值啊。对吧,好,那么首先呢,我们先来找一下这个市场活动的这个名称啊,同学们找一找。嗯,市场活动名称。在哪呢?这些市场活动是不是都是咱们动态拼出来的?对吧。是在这儿呢?是这个吧。没错吧,哎,跳转到这个详细信息页,那这种形式什么直接跳转到目标页了,对不对,我们选择使用的是什么呢?先跳到哪儿,先跳到后台,所以走一个点儿。
05:07
行吧,点度啊。要要传个参数。你思考这么一个问题,同学们啊,我现在走点to,相当于走so that so that能够接收我的请求对不对?但是他能处理我的请求吗?不能,为什么,哎,你是让我跳转到详细信息页,我跳转到哪条记录的详细信息我不知道啊。是这样吗?所以说应该给后台传个什么,我得让他知道我现在操作的是哪一条,对不对,好所以说啊,咱们要传ID对吧。ID等于咱们是不是要拼个ID了,同学们好,一定要小心一点啊,引号引号。回退一格加号加号N点。ID啊好。行,没问题啊。
06:03
行,那现在咱们就来一个这个detail.do啊同学们。de.do。好,这个咱们是进入到。跳转到详细信息页的操作啊好,如果你啥参数也不传的话,我现在我知道我跳到哪了。不知道,我知道跳转到的这个页面,但是我不知道这个数据是什么,是这样吗?好,所以说我们先把这个ID拿到啊,等于request点。Get parameter好,这里边儿咱们传了一个ID对吧?好,根据这个ID咱们得取个单条记录对吧?啊。
07:10
来一个activity啊,同学们。来一个好A掉一个点。嗯,比如说就叫detail吧,行吧,好,咱们把这个ID啊给它传递进去,返回一个单条记录activity,好,我们现在这个方法正在这个接收并处理的是一个。传统请求是这样吗?如果是传统请求的话,我们是以什么转发或者重定向的形式来做响应?是这样吗?那么我们现在要做的是转发还是重定向呢?转发为什么?因为这个A咱们得存个D,对不对,首先啊,咱们先把这个A存起来,A保存到request域,这个有疑问没。为什么?
08:01
很能用小的域能够办到的事儿,咱就不用大的域,是这样吧,好,那如果你使用的是这个request域的话,那么重定像素不好使啊,哎,这咱们复习过了啊,它必须是什么呀?转发好,Get request dispat点。Forward好,Request response好,呃,我们这里边来一个什么呢?转发那个路径怎么写来着,还用不用写这个杠项目名用写不。不用它是内部路径对吧?杠直接来一个work bench下的,Activity下activity下的。detail.jsp对吧?好,你这个转发重定向,咱们得把这个异常抛一下啊。行了,这回咱们这个方法就更像咱们传统处理请求这个方法啊,OK吧啊,否则人家会报错啊好,我们现在来一个。
09:13
说白了就是一个根据ID查单条对不对。那咱们来个activity,大家注意看啊,Get by ID。这个方法咱们是不是已经写过了?在哪儿写过的回?打开修改的这个模态窗口的时候,操作的是这样吧。这个方法能服用不?能不能使用?来,咱们来看看这个需求get by ID啊,同学们啊,咱们来看一看,我们最终找到这个get by ID是不是就是select from?这个ID等于ID啊,这方法能用吗?
10:03
能用,但是有一个小坑。导致这个方法用不了。这在哪呢?哎,漂亮啊,有同学说出来了啊,所有者,如果你仅仅只是根据ID查单条这个星里边所查询出来这个O呢,它必然是一个什么呀。是是是是ID吧。来看看啊,CRM。Activity呢,咱们存的是不是都是张三的那条记录的ID啊,那如果你是这么查的话,这个ID同学们想一想可没转呢,那最终你呈现在用户面前的这个所有者呢,是不是就是一个32位的这个随机串。没有意义,对不对,所以我再问大家啊,我现在来一个这个get BYD这个方法能服用吗?
11:01
能不能?不能,为什么不能?这个方法是根据ID无脑查询所有字段,不经过任何处理的,是这样吗?咱们这回是不是得单独写一个方法,是把这个所有者处理成名字的。是这样吗?所以说啊,这个方法啊,它不能服用啊,来一个点Del detail,把这个ID传递到里面,我们单独再写一个啊activity同样是根据ID查单条,你看看没,你看返回的数仍然是A呀,对不对,好但是呢。这个detail它就是不一样的啊,那处理所有者呢。咱们来个de,好,咱们来个result,来个activity。然后我看有些同学们这个activity是按心情写的啊,这个字母有些时候小写,有时候大写。
12:01
如果公司有要求的话,让你大写大写,没要求的话,你大写小写都可以的话,你就可以一个来能理解吧。你要写类名就写类名,你要首字母小写,你就所有的都小写OK吧,这有些时候大写,有些时候小写呢啊。咱们from activity这张表对吧。John t BL user,哎呀,还是他很熟悉了ona点是吗?Owner等于u.ID对不对?Where根据ID查单条啊,谁的ID?是不是A的ad啊,等于ad对不对,好,咱们都查什么,咱们是不是不能查这个星啊,你要查星的话,Owner是不是还是owner是这样吗。好,所以说啊,我们需要把这所有的这个字段信息啊,都给它铺出来,好,我们来看一看名点一下啊。
13:07
张过来。好后边这个所有这个逗号啊,咱们先先先加上啊,然后前面的呢。是不是这些普通的字段一律都是A点系列的呀?呃,A点系列的啊。A,点系列的就这个owner,咱就差个它对不对,有点as owner行吗?行,差不多啊。
我来说两句