00:00
好,那我们刚才呢,咱们看到了咱们的disparter solve初始化策略,其实大家看我们在spring me c中,咱们的配置文件中配置的一些内容,是不是应该都是在这个地方进行初始化的,对不对,对吧?那所以说在我们真正处理请求之前,在咱们的dispatch solve进行初始化的时候,咱们是不是就已经将这些组件是不是已经加载过了,对不对,初始化好了,那所以下面咱们要做的事情就是由dispat solvele来调用咱们的各个组件来处理请求,没问题吧,就比如说大家看来咱们的这个东西不就是找控制器的嘛,对不对,这个方这个东西handler adapter不就是咱们找到控制器之后来调用控制器嘛,对不对,对吧?好,然后这个东西不就是如果有异常来处理异常吗?那这个东西大家来看它不就是什么view resolve干啥的,当我们请求处理完成之后。
01:00
我们返回的视图名称要被咱们的视图解析器解析,然后找到相对应的视图渲染,能听懂吧,好,OK,所以说来吧。下面就是我们第四。这是什么?这是大写的吗?好,来大家看啊,好,下面就是咱们的dispa solve来调用组件处理请求的过程了,首先大家看啊,继续找啊,从这开始找,从这开始找,为什么还从这开始找,因为我们当前处理请求的方法就是谁啊,Service,那处理请求的方法,那咱们刚才要讲的不就是处理请求的过程嘛,大家说对不对,对吧?那所以咱们应该找到它的源头,应该就是service,大家说对不对,对吧?来咱们来看啊,这里面的service不说了,这是一个抽象方法,在generate service里面咋的啦?是不是对service方法进行了重写啊,啊,没有重写,这还是个抽象方法,对不对?下面咱们再来找到http solve,这里面是不是变化就挺大的,见过没有?
02:09
见过没有见过吧?好,这里面变化挺大,都变了什么,大家学过httb so,这源码你看过没有没有没有,都不会自己打开看看吗?你咋就知道你不会呢啊你不会,来来来来,咱们来看一眼啊好,首先大家看哪个是重写了JA的,知道它的负类是generic service吧,好,大家知道哪个是重写这边有个service,这有个service,哪个是重写了generate service中的service方法,下面这个现在会看了吧?好OK,来点击之后大家看你看它都干了点啥,把咱们当前的这个request就是这个东西,这个request,然后来转换成了咱们的http request,这个是它是不带HTTP的,这个是带HTTP的,能看懂不好,然后banks这是不是也是不带HTP的在。
03:09
这是不是也转换成了带HTTB的,那你可见这个东西跟这个东西它俩之间有关系没有有关系,这是负接口,这是子接口,这不向下转型嘛,对不对,是不是好OK,然后又调用了一个service,里面是不是应该有支持HTTP协议的这两个request和response对象能看懂吧?好,那不就应该是上边这个吗?是不是?哎,这方法你能看懂吗?你敢说这你要是看不懂啊,我立马给你送到外头去,我立马给你送到SE去啊好来再往下,大家看这个service,看这都干了点啥,你看你能看懂不啊,首先这个东西大家都认识获取啥呢?请求方式的好来判断请求方式method的下划线get你不知道是啥,你点过去看看看,好啊,Method的下划线get就是get下划线。
04:09
Head就是head_delete就是delete_options就是options,下面我就不说了啊,行吧,来大家看,如果检测到我们当前的请求方式为get,调用do get。这能看懂不?中间你不用管,你就知道它掉了do get,就算它不满足这个,它也得满足,这个也是调To Get能听懂不好,再往下如果是head调do head,如果是post调do post,如果是put调do put,如果是delete调独立调,调do delete,对不对?这能看懂吧,能看懂吧,那没看你知道看不懂啊是不是啊,你说这就是一个S能难,它能难到哪啊是不是啊,啊行,OK吧OK吧,啊行,这个看完之后看谁是不是看http serve的病呢,对不对,把它给打开之后,大家来看这里面有没有对咱们当前的service方法进行重写啊,有没有没有,那没有的话,说明这里面完全继承了我们当前的service方法以及。
05:24
我们service中所调用的那些do开头的方法,大家说对不对,对吧?然后下面咱们需要来找咱们的framework solve来找到这能看懂不好,然后这里面大家来看一下啊,咱们从头往下,然后来往下找,大家看诶有了,看在这儿是不是对我们当前的http service里面的service方法是不是来进行了重写,是不是啊,来咱们点击之后大家来看啊,看这都干了点啥,如果我这这是干啥的,你就看这httt method就行了,这应该是不是也是咱们的请求方式呀,对不对,对吧?如果这请求方式是等于谁的patch的好,或者说咱们的htt method它咋的了,它为空,也就是说它存在不存在,不存在没有值,它怎么办?去调用process request能看懂不这个。
06:24
这东西是个什么玩意儿呢?Process执行request叫请求,叫执行请求,来点击之后大家看里面有东西没有,是不是有东西,东西是不是还挺多呀,是不是好,但是咱们先不看,咱们继续往下大家看啊来。看好啊,那如果咱们的请求方式不是patch,它也不是null咋办?Else是不是执行else呀?那else里面它是怎么办的?去调用了它的父类中的service,也就是谁http solve b里面有service方法吗?没有,所以说他应该去找的是谁啊?Http solve中的能听懂吧,为啥你看后边人家标的有啊,这东西是继承了HTTP的service方法吗?大家说是不是?所以说咱们要去找它的负类的service,那不应该找的是咱们的咱们的http service中的service吗?大家说对不对啊?那找到了这儿之后它又该咋办?获取请求方式,如果咱们当前请求方式为get调度get,如果是post调度post,如果是delete调。
07:43
都都delete,大家说受不上对吧?好,OK,但是咱们该调谁是在哪掉的,是在我们当前的framework of里面掉的,大家说受不是对吧?那我们在这儿掉的话,那你就要来想想我们当前的这个类有没有对这些do开头的方法进行重写了,如果他要没有重写的话,应该直接访问的就是http solve中的do开头的方法对不对,但是如果他重写了,那就应该调用的是它本身的,大家说是不是来往下一看重写了没,重写了你看好这个东西啊,叫process request看到了没?
08:26
看到了吧。看他。一样,不一样。一样不一样,看它一样不一样一样不一样一样不一样一样不一样一样不一样啊,不一样是吧,啊不一样了,然后调在这调用的是它的负类对不对,那咱们就只看咱们经常用的这四个呗,Do get do post do put,还有do delete,一样不一样一样,所以说大家会发现它,哎呀,也不知道这个是啥意思,对吧。先判断了一下,判断完之后呢,去调了它,如果说不符合条件的去调用它的负类,它的负类中的方法最后掉的还是它是不是是不是啊是吧,好,OK,那所以说咱们下面是不是只要看它是不是就完事了呀,对不对啊好,然后咱们把这个东西给它点开,然后这个是来获取我们当前系统时间的一个什么时间戳,对不对,对吧?然后再往下,这中间这些东西咱们也不看,然后咱们直接看,这叫做do service do执行service服务是不是,是不是啊,好,OK,就点进去看一下呗,这个方法就是来咱们执行服务的过程,什么叫执行服务,就是来处理请求和响应的,知道吧,好,OK,来点击之后大家看,好啊,我们是从SERVICE1步一步一步的找到这儿了,所以说这个方法到目前为止应该是我。
09:58
我们处理请求的目前的方法了,对不对,对吧?好,咱们把它给点开之后,大家看掉了一个do service,结果你发现咋了,这是一个什么方法,抽象方法,那所以说我们应该去找谁?找它的子类吗?实现类,什么实现类,这是一个,这是一个类啊,它哪有实现类啊,咱们应该找它的子类啊,大家说对不对,对吧,它的子类是谁啊,咱们这顺序是这样排的,是我一个一个点开的呀,又忘了这framework of that,它的子类是它的子类是谁了,是不是就咱们上面这个呀,对吧?然后点开之后咱们应该看的是谁?大家说咱们应该看的是咱们当前的do service do service是不是在这呢?好,来点击之后大家再往下看,不管,然后往。
10:58
二走往这里面,它往请求欲里面就是各种放尺是不是啊,不管,然后再往下走,走到这儿do第四趴曲有印象没有,没有是吧?哎呀,那咱们那咱们看的那呃,Dispat里面1061行是吧?那不就是do dist里面的里面的这个方,这个方法里面的内容吗?不是吗?啊,咱们当时不让大家看过这个方法站嘛,是不是啊是吧,这个方法站里面,然后咱们不就说了嘛,然后那是do dispat在D在dispatch so的1061行吗?是不是啊啊,所以说这不就do dispa,这不就找到我们最终的这个方法了吗?你忘了来继续往下看看,是这个方法不找到1061行,1061行大家自己看,是这一行不是,是这行不是。
11:58
对吧,那不就找到这儿了吗?那咱们要看的,那不就是最终不就是这个方法,这个方法里面不就是对我们当前的请求进行统一处理了吗?是不是能听懂吧?好,OK,是service调用了什么?Do开头的那些方法,Do开头那些方法又调用了谁呀?又调用了咱们的process request对不对?然后这个里面又调用了我们的do service,然后do service方法中又调用了谁?咱们的do dispatch对不对?然后do dispatch里面才是我们真正需要去看的,能听懂吧?啊,行来,那咱们就说到这儿啊,好。
我来说两句