00:01
好了,那我们就接着往后说了啊呃,然后下面的话,我们就基于呃,刚才我们讲的这个分层啊,然后呢,一层一层去做研究啊,那我们先来说一下这个控制层啊,然后这一层的话也是我们这个重点要去讲解的啊。好呃,这个控制层的这个职责啊,刚刚我们这个大概聊了一下啊,大家应该都知道了啊,然后我们在这个开发的过程中的话,我们会用到这个很多注解啊,这些注解的话,我们这个边用啊,然后再来给大家去做解释哈,现在先不看哈。好,呃,那接下来我们就先把这个请求给它做一个打通啊,打通以后呢,我们再去研究这个细节的东西啊,OK,那我们就回到这个,嗯,开发工具中啊。好,这个请求打通啊,那我们先要基于一个请求来去说啊。好,比如说我们打开这个浏览器哈,我们现在呢,想去发送一个请求,呃,这个请求怎么发呢?啊,其实很简单,你就在你这个地址栏里面去写一个请求就可以。对吧,你比如说啊,我们在这个京东里面哈,我们想去做一个这个搜索。
01:03
是不是或者说我们想去访问一个京东的页面,比如说作为一个搜索吧,我就搜索一个这个手机啊一搜索。对吧,大家看一下啊,它这个地址栏里面其实是有这个变化的啊,我们把它复制出来,简单给你解析一下啊。好就拿到,呃,拿到。呃,随便随便找一个吧,就这个吧,好吧。来推到下面啊,就放到这儿,你看一下啊。呃,这个其就是我们发送了一个请求啊,前面这一堆的话呢,我们不看啊,这就是你的这个请求的一个地址啊,这是一个就是一个域名啊,然后它会解析一下这个IP啊,后面这个才是我们真正的请求,就说白了,我们要去做一个搜索啊,这是我们这个真正的那个请求啊,行,然后你搜索了东西的话,他为什么拼到这个后面。好吧,这个我们暂时也不看啊,就是你先明白我们这个请求是什么样子的,比如说啊,现在如果我们想自己发的话,呃,那我现在我启动的这个tomcad服务器呢,是在我这个本地,那我就请求我的本地就可以了,好后面是你的端口号,就你先要请求到你的tomcat,然后呢,后面的话再去接着写你的请求。
02:06
理解吧,比如说我们先写一个叫做hello word吧,好吧,这是我将来要去发送的一个请求,当然你现在你发送的话,肯定还是一个空白界面,因为什么它并不知道这个hello word应该怎么处理,你后台是没有一个处理的过程的。好,接下来我们就基于这个请求来去说啊,把它复制过来。好,那这个完整写法的话呢,啊,应该是这样子的啊,就是HTTP对吧,应该这样子的啊,OK,把它复制过来好拿过来以后呢,我们就来说一下啊,你要处理请求的话呢,那应该是拿我们的控制层来去处理的,所以说现在我们就需要去写一个类了啊同学们,我们在这个包下面我们去新建上一个。包啊,我们把它分开去,比如这个叫做control。对吧,这就是我们的控制层啊,OK,来,我们就上一个类,好,这写的是Java代码啊,比如说我们就叫做。呃,叫什么呢?我们就叫这个custom吧。
03:00
对吧,Customer啊,就是这个自己测试呗,啊customer这个controller。OK,好,那么这个进来了以后呢,我们先说一下啊,这是我们的控制层,OK吧,控制层啊,它就是什么呀?呃,专门去做这个前后的这个交互啊,比如说跟我们的这个客户端啊去做这个交互,然后呢,将来去调用你的这个服务层,OK啊像那你说你说你是一个控制层,它就是一个控制层的吗。你就随便写个类,你就是一个控制层了,那肯定不是啊,所以这个时候呢,我们需要做一个事情,什么事情呢?就是我们要把它标识成一个控制层,那怎么把它标识成一个控制层呢?我们只需要加一个注解就可以了,就是CTRL注解。对吧,你你把这个注解一加啊,就说白了,我们把它标识成了一个标识为一个控制层,那么只要你把它标识成控制成,诶我的这个整个这个这个项目啊,或者说我整个这个应用啊,我就知道了,你将来是要什么处理处理请求的,那我将来这个请求来了以后呢,我就会到它里面去找。
04:05
理解吧,啊,当然这个你标识的空的这个是给谁看的呢?啊,实际上是给这个point去看的啊,实际上是给他看的,因为它会解析你的这个注解,然后呢,会把它呢作为一个什么初始化。理解吧,因为你从代码角度来讲的话,你就是一个普通的类,那么将来比如说我要调用你里面的方法了,那你的方法就得什么用你的对象去调用,对吧,但这种对象谁帮你创建,谁帮你管理呢?我们就不做了,都是由这个per帮你去做的。你只要加注去就可以了。好吧,那你光有注解不行啊,对吧,你说我这个有一个请求来,我们刚刚的一个请求啊,这是我这个请求啊,这是我的客户端的请求,OK,那你说我这个请求来了以后呢,我光知道你是个控制层,那你说你也没有对我这个请求做出处理啊。对吧?啊,所以说呢,我们其实针对于你的每个请求呢,我们还得有一个请求处理方法啊,这个方法我们写一下啊,这个方法我们一般是返回字符串啊,然后比如说我们就叫做这个handle啊,比如handle了吧,就是这个方法的名字,我就写一个hello word吧,这个方法名字无所谓啊,随便写。
05:13
好,那么这是我们的请求处理方法。好,他是我们这个请求处理方法。好,那现在的问题是,你说你这是一个请求对吧,这是一个请求处理方法,那你说将来我的这个请求发送过来以后,他怎么知道要交给这个方法去做处理呢?对吧,那我将来客户端的话,我会有什么很多请求,比如说我有一个hello word的请求,对吧,比如说我还有什么有这个hello的请求啊,我有什么word的请求,对吧,我有什么ABC的请求等等等等一些。我有各种各样的请求,然后呢,你这里面的话呢,将来可能会有各种各样的方法,对吧,有什么hello方法。是不是啊,你有各种各样的方法,那你怎么就能够知道你的一个请求是要交给哪个方法去处理呢?对不对啊,这个事给大家说一下啊,我们需要用到一个新的注解,叫做request mapping。
06:04
啊,这个注解呢,就可以告诉你哪个请求交给哪个方法处理啊,当然这里面需要写东西啊,写什么东西呢,就是把你具体的请求,这就是你那个请求啊同学们写到这。好吧,这有的人呢,喜欢在前面写个斜杠啊,这个斜杠写不写其实都可以啊,我就不写了。好,说说这个啊,给大家解释一下这个request mapping它干嘛呢,它是。做了一个工作啊,他就什么将将什么将这个客户端的这个请求,诶与什么呀,与这个方法进行这个映射,OK,那我只要这样一映射我就知道了,哎,将来你的这个请求来了以后呢,其实是交给我这个方法来进行处理的,好那我这个方法中的话,现在我们也不用做什么过多的处理啊,比如说我就给他返回一个。Success。对吧,就是说说明什么成功了,好,那你的这个success呢,我们就会什么给你的客户端往回返回啊,给你的客户端往回返回,好,那我怎么就能够把这个结果给他返回去呢?来听我讲啊,如果说你想要把这个结果给他反馈回去,那我们需要用到另外一个注解,这个注解叫这个叫response body。
07:18
啊,这个重点是干嘛的呢,给大家说一下啊。OK,就是什么呀,它是将。听好了啊,将方法的这个返回值处理成这个字符串啊,一般是这个JA字符串啊,啊不过像我们这个本来就是一个字符串,它就不处理了啊将方法的返回值,然后呢处理成字符串,然后呢这个返回给客户端。啊,那如果说我们本来就是一个字符串,它就什么不用再去做摘的处理,就直接把这个字符串给你返回回去了。理解吧,好,那说到这以后呢,再给您说一下啊,因为我们现在这个前后的交互哈,我们基本上都是什么通过这个摘格式呢进行交互的,就说白了都是什通过这个字符串的格式呢进行交互的,所以说我们每一个方法上面,我们基本上呢,都会去写这么一个注解,那么它会显得稍微麻烦一些啊,因此我们就有这一种写法了,看好了啊,我把它注释掉。
08:16
注释掉以后呢,我在我的类上面啊,我把这个注解呢,做一个升级啊,我把它升级成这个注解叫做rest controller。好,这就可以了,这个注解呢,其实它就是相当于什么,相当于两个啊,一个是controller,然后加上这个啊,就相当于什么,相当于这两个主体。能明白我的意思吧,你点过去你就可以看得到了啊,你看它上面这个注解的上面是不是一个responsibility,一个是CTRL呀。对吧,它是一个组合注解啊行,那如果说你在你这类上面去标了这么一个注解以后呢,其实它会对应的啊,相当于在你的每个方法上面呢,都标了一个responsibility,就省得你说在每个方法上面都去单独去标这个注解了。
09:05
理解吧,好,那我们就把它写好了啊,行,这个写好以后呢,接下来我们就可以正常的去做访问了啊,你把代码写完以后呢,重启一下你的服务啊,同学们重启一下。好,那这个服务这个重启完成以后呢,我们接下来就回到你的浏览器端,你看啊,刚才我在访问的时候,它还是什么返回一个空调页面对不对,现在我在访问的时候。你就收到一个success。看到了吧,这个success谁给你写回去的呢?就是诶,我代码中给你写回去的,你看我就给你写回去的一个字符串,Success。明白了吧,嗯,就很简单,这就把请求打通了啊,就说白了,你先明确一下你的客户端,你要发送一个什么请求,然后呢,我在我这个后台中呢,呃,我要什么通过一个控制层,然后呢,通过一个请求处理方法,然后呢,把你这个对对应的请求呢,映射到我这个方法上面。
10:04
对吧,然后我就会什么。给他什么处理好了,那么将来你这个客户端一访问,诶,那我的请求呢,就会什么定位到什么,定位到你的这个控制层,然后呢,再去定位到你这个方法,那我的方法一执行,我给你返回一个success,那这个success呢,再通过我们的response这个注解,他就知道,诶我要把这个值呢,给你写回到浏览器端,那你就可以什么在这个浏览器里面看到这个结果。很简单吧。对吧,你看啊,比如说我再给你演示一下啊,假如说呢,我们现在又想发送这么一个请求啊,这个非常简单啊,我还想发送一个就hello的请求吧。好,那比如说我就写一个什么呀,你是一个hello的请求,那我就要把这个请求的映射给我的一个方法,假如说我这个方法我也叫hello哈,那我这个上面我就写个hello就可以了,对吧,你比如说你想给他反馈什么结果呢?比如说我就写个hello,比如说这个呃,Hello谁啊哈,这个Java。对吧,我给你写个什么hello Java啊,这是我要给你返回的一个结果,那现在我就把它写好了,那写好以后的话,你看一下啊,我们再重新把这个给它重启一下。
11:08
就你要明白我们要做哪件事情啊。行,那我这个重启完成以后呢,你再回到这里面,比如说我就访问一下这个hello,你看hello Java你就拿到了。对吧?啊,这个就非常简单啊,其实我们通过这个做开发啊,你的工作呢,已经变得特别特别的简单了,如果说你要使用这个最原生的这个什么叫做solid JSP来去做哈,那这个过程你得写大量的代码才能够完成,现在的话呢,几个注解搞定了。对吧,这就是框架的一个封装。好吧,行,嗯,先说这么多啊。
我来说两句