00:01
好吧,来,下面我就开始写了啊呃,那么写的话呢,你就围绕着这个来去写就行了啊,围绕这两个东西。对吧,这个是你一定要看着去写的啊,就是人家给我发送一个什么请求。对不对,然后呢,我将来给人家返回什么东西啊好,首先来分析一下啊,这里面他将来发的这个请求呢,是这样子的啊,是HTTP,然后呢叫什么,叫什么big data gmail com,但是我们目前我们这个所有发生的请求都是一个什么,都是一个local host。啊,那我们怎么把这个local house换成它呢?啊,这个其实很简单啊,我们是不是只需要把这个啊把这个东西呢,作为一个什么这个这个主机名,然后呢,去映射我的IP地址不就好了吗。对吧,这个你要这么去做啊,同学们你要这么去做,怎么做呢?来说一下。找到你的这个电脑啊,然后呢,找到这个C盘啊,C盘里面找到这个Windows啊,Windows里面找到这个SYSTEM3,然后呢。找到这个driver啊。
01:01
好,Driver drivers里面找到ETCETC里面找到这个host啊,你在这个host里面。好,你在这个house里面,你要配一个东西啊,就这个东西。啊,我是已经配过的啊,就是我把这个127.0.0.1呢去映射成这个big data.com,那么将来我这个地方写它实际上就相当于写的是127.0.0.1,那么实际上也就相当于写的是localho,因为这个东西跟localho是有映射的。对吧,它正常情况下它跟这个local house是有映射的,不过这个东西不不需要你去配哈。能理解吧,这样就可以了啊,就现在我们是不可能去真正的去搞一个域名的啊,同学们,我们就指着什么呀,通过这种方式来去测试啊,来去这个演示这个效果就行了,那你真正的这个生态环境中肯定是有一个域名的,这个域名是你们要自己去申请的哈。OK吧,我们大概把这个效果实现下就行了啊行,这个事先说一下啊,你要把它配一下,如果你不配,那你肯定是这个访问不成功的哈。好吧,来这强调过了啊好,强调过以后,接下来我们回到我们这个代码中,那么回到代码中以后呢,下面就可以写了啊,来到我们的controller中。
02:06
这里面首先我们需要有一个方法啊,他们那个你看一下啊,它最终返回的就是一个摘对不对,但这个摘的话呢。呃,你可以自己处理,然后也可以什么这个给他返回一个对象,他自己转啊,那比如说呢,我就可以返回一个对象吧,我就自己不去处理了啊,那你要返回一个什么对象的啊,这个对象你分析一下啊,这个整个是一个加深对象,它里面的话有一个K,有一个value,然后这个K的话呢,它又对应的是一个对象。对不对,又对应一个对象啊,那我就可以这么去设计了啊,我把它的整个给它处理成一个map,你看了哈,整个处理成一个map map里面你的key呢,都是一个字符串,然后你的value的话呢,你看它是一个引T,它是一个这又是一个map对不对,你看map里面有个K有个value,有个K有个value。对吧,好,那我就什么直接把它声明成一个object得了。哪没看明白,这是我将来给你返回的结果啊。好,然后呢,我们叫什么方法呀,这个叫做就叫dau啊。
03:02
Dau加什么real time,这就OK了啊,Real time好行,然后呢,这个上面我们加上一个mapping啊,它这个没有,它这种方式一看就是什么get请求,因为你的参数是什么,放到这个地址栏中的啊,那我就加上一个什么get mapping,这里面写什么东西啊,那就写你的这个请求啊,叫dau real time对吧,然后呢,它有一个参数,参数是一个TD,那我就什么定义出来这个TD。对吧,TD然后呢,我们通过一个叫做request啊,然后呢,去接受一下TD,这不就拿到了吗。能看到吧,这应该就是个天啊,我要按照你指定好的这个日期,然后呢,去查什么,查这个分时统计对吧,那最后的话呢,我们就给他返回一个结果啊,那这个结果的话呢,我们肯定什么需要调用你的业务层去处理的啊,所以说你看了啊,现在我可以这么去做,我在这里面呢,把我的业务层拿过来啊,业务层就是我的publisher publisher service,然后呢,Publisher service OK,上面我加上一个auto就搞定,那这里面我就可以去调用了啊,比如说我的publisher service里面我有一个方法假设啊有一个方法,这个方法叫做呃,叫度吧,就是。
04:12
处理啊,处理什么处理这个,呃。Dau要可以吧,我觉得这个方法了啊,那我把这个TD给他传过去,那这个给我返回一个什么结果呢?这个返回的结果。嗯,自己定义吧,好吧,这个返回的结果肯定还是个他啊,肯定还是他。对吧,你后面给我查数据嘛,你给我返回这个结果啊,那我结果的话就叫做result吧,好吧,那我最后呢,就把这个什么这个return一下,这个result就完事了,OK吧,好,那如果说我们希望他能够自己把我什么自己把这个东西呢处理成JA的话呢,我们就需要加上一个response body,那我就顺便什么直接在这地方去改了吧,改成这个rest controller,对吧,这样就可以了。OK吧,那接下来你看了啊,我就要调用到你的这个publisher了啊,那这个方法没有,我把它创建出来。
05:05
好,直接在我这个呃,业务层的接口中,把这个方法先创建出来啊好创建出来以后呢,接下来我们就来到你的13类中,你看了哈,这个13类中啊,13类中呃,业务层在这啊,我们需要去把这个方法给它实现出来。好,那这个实现出来以后呢,这里面就是你具体的查询了,对不对,好,那这个查询的话,你就看一下你有没有什么业务处理。实际上现在我们没有什么业务处理啊,我们就直接去查吧,好吧,如果你要有业务处理的,比如说你想去做什么什么计算啊,然后呢,去这个做什么判断啊,你都可以有啊,就是你可以什么带上你的业务处理啊,好,那我没有,没有的话,我就什么直接叫直接什么到你的map中去查,就是要查ES,然后得到这个结果就完事了。OK吧,那我就什么呀,呃,直接把这个map拿过来啊,叫这个publisher。Map publish map好,上面一个auto好,接下来我就什么去掉了啊publish map好点什么,比如说我们叫做search好search呃,Search什么search这个dau啊search dau,然后呢,叫。
06:10
Dau的这个就就就就这样吧,好吧,设置dau,然后呢,把这个TD给他传过去,好,那这个返回的结果肯定还是这个结果,还是这个格式啊。对吧,这就叫什么呀,叫dau的,呃,Dau的一个这个消息吧,Dau的这个结果啊。对吧,好这样就可以了,行,然后呢,你这个东西呢,再给他什么就返回就行了啊对吧,那这样的话,你看一下我们不就来到你的这个迈城了吗?来把这个方法给它创建出来。好,这是在接口中创建的啊,然后接下来我们回到这个实像类中,你看了啊,有一个实现类啊,在这好把方法实现出来,那这个方法实现出来以后呢,这就是我们正常的查询了,那你就要什么从你的ES中呢,把我们想要的结果给他查出来。
07:00
能记得吧,把这个想要的结果查出来啊,OK,呃。来,我们先这样吧,啊,我们先不着急,呃,去查吧,我们先写一个死的好不好,我先测一下我这个能不能跑得通啊,再来说啊,来我们先写一个死的啊,那怎么写个死的呢?那我就把这个结构给它定义出来,比如说我要返回的东西啊,String object,然后呢,这个是result。啊,叫什么叫做dau啊。好,Results啊,好,等于又上一个哈希map OK,行,这里面我们就设置了啊,比如说你的这个日活总数啊,日活总数就是daus点,我们叫put,注意啊,人家结果中要求的是dau total OK,你就写的是dau total,然后呢,后面有个值啊,这个值的话,比如说我们写个456好吧,好,下面是这个今日分时啊。今日分时明细OK,这个的话呢,你看它也是一个map啊,所以我们去做一个封装啊,比如说我再用上一个,用上一个哈希map OK,那这个哈希map中我们的K是一个字符串的,然后呢,呃,只是一个in好吧,或者什么浪吧,这个大一点啊,或者是一个浪啊都可以。
08:18
好,这个叫什么,这个叫TD啊,就是今日的那行吧,然后接下来的话放点东西啊,Dad点,比如说put put啥东西啊,比如说这个,呃,我们就假设写这个吧,比如说你这个12点的时候,对吧,你早上这个八点吧,早上这个八点的时候。呃,有这个,比如说有100个人好吧,呃,那浪类型,浪类型这玩意还得写个浪是吧。呃,浪就浪吧,来Du TD这对吧,你就写呗,比如说这个12点的时候。然后呢,有这个呃,55个人可以吧,大概写几个啊,比如说这个12:13点的时候啊,有这个66个人啊,然后这个14点的时候,这个上班了,对吧,上班以后没人了啊十个人对不对,然后呢,到了这个17点的时候下班了,对吧,下班以后这个200个人。
09:13
好吧,把它写好,写好以后呢,你看啊,我就什么dau result,什么put,那你是叫什么叫DAUDAU,然后呢,TD,好,那我把这个DATD给它放进去,然后呢吧,同学们。啊,这是我的今日的分时明细,然后再来写一个什么呀,这个昨日分时明细,那把这个复制过来,复制过来以后呢,把它放到这,放到这以后你看把它改成dayd啊D就什yesterday昨日啊,然后就改都改一下啊。诶。好,然后呢,这个是dau的外地啊,然后呢,这也是dau的外地,然后呢吧,然后这里要改一改啊,比如他是这个八点钟,那我是什么零九点钟,九点钟这个比如说一百一百三十个人好吧,这个是11点钟,11点钟,比如说这个呃,77个人啊,然后这个是十十二点钟诶。
10:07
12点钟,比如说66个人啊,然后呢,14点钟,比如说这个,呃,50个人吧,啊,然后这个17点啊,17点啊,比如说这个一百一百六十个人啊,再来一个吧,好吧,随便写的啊,随便写的,然后这是18点的时候,比如说这个一百十八点,就是200个人,230个人,好吧,我就随便写了点假的数据啊,我们先测一下能不能跑得通啊,最后呢,把这个什么dau result给他返回回去好搞定。那你把这一套都写完以后,接下来我们就可以测这个接口了啊,怎么测呢,来注意。呃,我们现在要写的话,你看我要这么去写。我把这个线跑起来啊,先跑起来。嗯,跑谁的跑这个啊,别跑错了啊,跑的是这个啊,好让一下。
11:06
好,呃,这个跑起来以后啊,同学们啊,我就可以去访问了,那你说我访问的话,我现在直接这么写能行吗?比如说HTTP叫什么叫big data,点准备点com,然后后面直接写个什么dau real time问号,比如说TD。等于什么2022,比如说随便写一个啊,杠杠零三杠三零吧,我加写能行吗?现在。注意啊,我来发送走。发送不了这个请求。这个为什么发送不了请求呢?你看他发的是什么东西啊,他说我连的时候连不上,他连的是127.0.0.1的八零端口。对吧,就这里面还有一个什么事啊,大家注意我们之前怎么写的呀,我们之前所有的请求都是什么带着端口号的,对吧,比如说我给你打开你看一下啊。
12:00
呃,之前写的在这儿啊。啊,我们所有的请求呢,都是什么,带着端口号的。来找到那个CTRL了。来找到CTRL了,你看一下啊,是不是8080啊,然后什么什么8080,对吧,为什么我们之前带的端口号的,因为啊,其实现在你也能看一下啊,我们正常的这个请求啊,我启动起来以后,看这个位置,我的端口号,他们开的端口就是8080,能理解吧,但是你发现啊,我们正常这个访问这个网站的时候,比如说访问什么京东啊淘宝啊,你看啊,我直接写这个东西,比如说写个什么京东点com。你说我写那个什么什么什么什么8080吗,同学们。我写吗?我不写这个东西,你写了还不行。对吧,你写的还不行,对不对,你写的这个端口还不行。那说明什么,说明人家啊,他不要求你写写这个端口,那么这个地方如果说我不想去写这个端口的话,应该怎么办啊,大家注意,这个其实不写啊,其实不是不写,它是省略了,那么什么端口是可以省略的呢?八零端口是可以省略的,你看一下啊,它看到你没有写的情况下,他自己推算出来就是一个八零端口,那八零端口是可以不写的,那也就意味着如果我不想写端口的话呢,我就得保证你的tomcat启动的时候,你绑定的端口号也是一个八零端口,这样我才能够正常访问进来,如果你还是一个8080的,对不起,这是不行的。
13:23
对吧,所以说啊,我们如果严格按照这个来做的话,我们还得再改一个东西来,我把服务停掉,改什么呢?注意啊,改tomca的端口,这个怎么改呢?来到我们的注意啊,来到我们的这个配置文件中啊,它有一个叫做application进来,进来以后你就去改这个端口,端口的话就叫做server.port你看一下啊,它默认是8080,你把这个配置给他写出来,Server。点你把它改成八零,这就可以了。好,你改成八零以后呢,就相当于把这个汤姆卡端口给改了啊,改了以后我们再来启动。
14:02
好,这一次启动起来以后,你看一下啊。他们开的对吧,端口号是八零。看明白了吧,好,那这个有了以后,你看啊,我再来去测这个接口啊,再来测一下接口,把这个放到上面啊,你看我测了啊走。你看结果回来了吧。看到这结果没有?对吧,你看这个结果跟它的这个格式一样吗?是一样的啊,你看是不是一样的呀,对吧,那就说明啊,现在我们这个接口呢,其实就已经什么给他打通了啊,只不过这个数据呢,还是死的啊,我们接下来的操作就是把你的数据呢给它变活了,不就OK了吗。听明白了吧,同学们好,那这个接口我们的联通就已经什么测试通了啊,OK,听一下。
我来说两句