00:00
好了,那我们来做来设计一下吧,设计的我们说简单画一个流程图,这个流程图我们做个删除的摄图,诶删除的。删除市场活动知道吧,好,下边我们来这个来设计一下这个流程了,那我们说所有的流程都是从客户端发起的。那我们这段来自客户端,第一个环节永远是客户端所有流程都是这样。那客户端我们说就是浏览器,就是用户在浏览器上所做的操作。那他操作他就发起一个查这个删除的请求,发起删,发起一个删除的一个流程,他如何发起这道什么需求,说的很明白了,说用户在市场活动主页面上边,他想杀哪些市场活动都查出来了,查出来之后怎么选择想杀哪几个杀哪几个,说用户选择市场活动,然后呢,这个地方来,用户选择市场活动,第一个环节选择市场活动让他选,然后呢,在哪选在市场活动主页面,在市场活动主页面,主页面选择要删除的市场活动。
01:10
那选完了之后怎么办,他想删除了,他想删除怎么办,他就点那个删除按钮知道吧。选完了之后一点删除按钮,那用户点击删除按钮,这都是在客户端浏览器上面发生的,用户点击删除按钮,删除按钮,一点删除按钮,大家看发生了什么事。需求说了弹出确认删除的窗口,那说确定删除吧,在一般的删数据都会什么?弹出来这个,然后弹出弹出然后确认删除,到这叫对话框是吧?这叫对话框叫确定上耳ler就那个什么,就不是不是耳他那个对话框叫什么。确定删除方的对话框叫什么,就是吧,对他那个确定删除,那他一点确定就要向获得冠军了,这些都是在客户端浏览器上边进行了,让用户点击确定,用户点击确定,那这个时候就要向后台发请求,那向后台发请求,那你要后台提供来处理了。
02:18
就为什么要向后台,你要数据在后台我要删数据,我肯定要向后台发,所以那后台要提供CTRL来接收并且处理进去了,那这个CTRL来看是在原来CTRL基础上加方法还是新框件ctrller。对,那你看他响应信息回来之后,要返回到哪个页面里边了。对,是不是还是返回市场活动主页面,对还是返回市场主页,那他什么市场活主页面对应这个目录资源目录,还是这个市场活动这个资源目录。而市场资源目录,我们说一个资源目录,它对应一个什么,对,对应一个ctler,所以我们还是在原来CTRL叫加方法,那这个CTRL来一个叫activity ctrler,在这个CTRL里边加一个方法,这个方法让这个客户呢一点了吧,确定向他发一个删除的请求,删除请删除请求,那大家想一想,这个请求是同步的还是义务的。
03:19
对,为啥一不到。对,页面不跳转是吧,响应回来之后只刷列表,别的地方都不变,局部刷新是吧?所以它是个什么?对,它是个异步请求,那异步请求需要提高什么参数。对啊对,那你看肯出来需要什么特数,肯出来需要什么桃数,你看肯出来干什么事,肯出来干什么事。删对你要你要删除市场活是不是就删市场活动啊,那删市场活动肯多少好删主要你要删哪哪些市场活动是不是知道吗?你要确定删哪些市场活动,那如何让他确定删哪些市场活动,找一个唯一对,找个唯一的值,那就是它的什么主件是不是对,把这些市场活动的主件发到后台,所以把这些市场活动主件,那你个参数名都是什么ID发到后台这ID那你要删几个ID呢?
04:18
删几个市场活动,不一定是不肯定是吧,有可能是多个市场活动,所以要传多个ID,传多个ID怎么传?我要删除多条市场活动,那每一个市场活动都是一个参数,参数名都叫I,都是ID,参数值都是各自的值,这是传了一个市场活动的ID了,我要传多个市场活动怎么办?他要束存存。对这个地方什么后边加上按的符号,再来一个什么ID,再来一个什么ID,就这选了几个,把几个市场活度ID拿到,都是以这种什么参数名都叫ID的形式发到后台,选了几个拼几个,然后呢,按的符号ID等于这些什所以这些怎说这这样的话,大家这其实这种传参数的方式,就是大家我们以前给大家讲过那种,你说比较也是比较常用的一种方式,就是一个参数名对应多个参数值,行吧,他这一个参数有多个参数值,这种情况发到后台去了。
05:24
就这种行为啊,向后台发请求,所以后台大话,我说CTR拿到这些ID值之后,就能够把这些根据这些ID把数据删了,那他接收到请求之后,这CTRL了三个职责,第一个职责接收请求有参数,获取参数,那获取参数的时候咋获取定义行参获取,那定义行差定义什么类型的形态,对一个ID是个字符串,定个字符串的数据,那多个ID呢。对这个字符串数组参数名叫什么,对ID跟前面这个参数名保持一致,所以我们将来在这个什么CTRL方法表定义这么一个形态,一下把这些参数都接到了。
06:08
好,这是我们说到这,那接入到这些参数的同时,也都把它封装起来,也都分成数组里边了,所以填出的第一个职责就就完成了。把数据是吧,把参数请求接收到,把参数都拿到了,并且分装,分装好之后第二个知道处理业务,处理业务就是处理数据,处理什么数据那就是什么。对,那就是什么,那处理数据就是根据这些ID到市场活动那个表里边,把数据删了就行,你要删除这我们也删了,那删的话他就他不能自已上,它就调service,调谁的service,对service要操作市场活动这个表,调市场动这个表对应service。我们的原则,一个表对应一个实体类,对应map接口,对应验证文件,对应一个service,所以在这个service里加一个方法,这个方法干什么?根据ID组成数组来删除市场活动知道吧,然后呢,那这个这个方法名我就建明之意,直接写了删除的方法的例子,删除什么删除艾特的市场活动。
07:11
删数是我动根据什么商办根据ID商根据几个ID上多个ID,那这个负数ids,然后呢,在这里边传出来一个参数,这个参数是个什么?对是不是ID总数数组负数就是ids知道吗。这是我们做到。好,这是我们这那这个service,我们说他就可以访问数据库,根据这些ID总合数组到数据库边批量把这些市场市场活同全删了,当是它不能直接访问出,它就调map,调map,那调map这个地方来调了,调市场活动的map,因为操作市场活动这个表调市场活动map,然后在市场活动map里边加一个正号,然后让service调过来,这个方法也是这样,我就建明这一写了,根据ID总额数图来批量删除市场活动这个地方大一个delete delete,然后呢I特,然后呢这个地方来一个by I DS在这边传一个ids。
08:11
这是我们这,然后呢,这个时候这个mapper它就可以什么访问数据库,然后执行操入据根据ID总数图来批量删除市场活动,然后呢,这个地执行S句,执行circle语句啊来什么来这方删除市场活动啊,把这些市场活动都删了,删了之后把删除的结果往外发,那删除的结果是个什么类型的。对删除操作,删除的操数据是不是返回数据都是影响结录入啊,对添加修改删除这些写数据都是什么?返回的是影响旧条,那就个整数值,把整数值返回到service service在拿到之后再返回controller啊,这样的话当我们这controller。
09:02
第二个职责就完成了,处理业务就处理好了,把这些什么该删的数据都删完了,下边第三个职责删成功了还是失败了,第三个职责根据删除结果就根据处理结果吧,处理结果然后呢,生成响应信息,响应信息啊,然后把这个响应信息返回到前端,这是它的第三种指导这个响应啊,这个响应那大家可以简单想应,想象一下这个响应信息是个什么样的信息。对,从格式上来讲,看前面发请求,前面发请求,一波请求,阿贾格斯发的响应信息给阿贾克斯,阿贾克斯能解析数据,只有杰森字符串,你给他返回网页,阿贾克斯解决不了,那关键这个阶层字符串里边包含什么,谁来决定呢?对,你看他的下一个环节,前台需要什么,前台需要什么,你访问什么。
10:04
前台不需要你返回也不返回,那前台需要什么?对成功或失败是吗?对,那然成功了,他叫什么要刷新,刷新直接调那个分页函数是不是就可以了,对,然后呢,失败了是不是提示信息就行了,所以他只需要知道后台删除成功还是失败,然后呢,我们返回一个成功的设备,标一成功,零失败,然后呢,如果成功了无所谓了,失败了是不是还是返回提示信息啊对,提示信息把这个提示信息返回,然后呢,把它这个地方往后放啊。这么一个杰森访问到前台就行了,那这个杰森访问到前台,那前台拿到之后解析杰森旋转页面。解析解,森然渲染列表。那怎么解析阶段,那就是看看一还是零一,那就什么关闭这个地方刷一下,这这这么这这个一点确定,然后把这个刷一下,然后呢,如果失败了不刷,那提示一下就行了。
11:06
这是我们这个流程。好,这个流程呢,我们就给大家简单涉及到这。
我来说两句