00:00
呃,首先第一个呢,那就是关于我们现在的这个项目对吧,那么大家呢,一定要跟着我敲啊,基本上每天呢,也也也可能不是每天啊,如果时间要是还行对吧,那我就会找着看一下啊看一下那其实对于我们的项目来讲呢,这个代码啊,不难同学们对吧?但是呢,难的是你出问题的话,你应该知道我现在是哪个环节出问题了,那咱们现在其实我设的环节还比较少吧,那无非就是我们现在模拟数据一个,然后呢,我们去对吧,这个自己写我们这个spring重新处理一个,然后往卡卡发送一个,那么后边呢,咱们会涉及到很多环节,对吧,我可能会涉及到,诶我现在发送到卡卡主题,然后交给SPA处理,处理完之后呢,我再会学会我的卡卡,然后接下来再去处理对吧,那么这个环节很多,哪一个环节出问题呢?那你一定要去会定位对吧,那么关于咱们这个问题啊,那大家呢,一般在咱们这里,我看到这两天啊,这个会出现比较多的一个问题,就是说因运行程序呢。
01:00
也看到这个屏幕啊,叉叉叉叉叉对吧,再把它生成数据,但生成数据呢,是错的,其中一个错误比较明显的标记什么呢?是不是有一个叫500对吧,是不是有500有一个错误呀,对吧?大家注意啊,那么一般呢,对于我们现在这种状态码的话,大家呢,那应该有一些对吧?那你应该知道,首先第一个200这个呢,是我最希望看到的,对吧?一般的这个200就比示什么,你给我发送个请求,我给你个响应,然后呢,这个响应的成功了,那么这个时候呢,它有个状态的一个,我们这个编码叫状态码,这是什么呢?就是我们这个200啊,这是正常的,诶你请求成功了,我们一个响应啊,这是正常状态吧,还有一种情况什么呢?诶,你发送某一个请求,请求某一个我们的资源结果呢,返回什么四什么什么什么四零什么什么短,一般是四开始的短存,比较常见的4045对405对405,那么如果404的话呢,那你去检查什么呢?你去检查你是不是我现在这个东西写错了,我再访。
02:00
问的时候啊,本来我现在访问的是我们现在A的资源,结果呢,你访问B了啊吧,这个东西你去检查你的拼写是不是有问题对吧?那么一般405呢,一般是请求方式,这个有问题,本来呢,我现在啊,我当前只能处理你的概率请求,但是呢,你就发送为POS请求,那这个时候呢,我一般处理不了,那这个是常见的四开头的,那么还有一个五开头的对吧,那么一般的500对吧,这是比较常见的,那么如果是五开头的话,这个是不愿意啊,这个是呢,这个时候叫服务器,对,一般五开头的是服务器内部的错误,那么如果服务器内部错误的话,那这个时候大家就不要盯着你这个黑窗口来看了,那你看谁呢?你就看我们idea它的控制台啊,因为我这程序现在是不是在idea运行啊,对吧,那么如果服务器内部报错的话,他肯定在运行的时候呢,对吧,那会给你一个错误提示对吧?然后接下来大家看一看,诶,我现在大概是什么位置出问题了,那么常见的我们现在两个问题,一个是我们这卡不卡对吧?大。
03:00
大家可以吧,我给你们提供的讲义啊,注意是让你们做参考,你们写代码的时候,你可以照着我这个写对吧,但不是让你们来复制,一共有这么几行代码,你们没没必要复制对吧?诶什么地方可以复制的配置文件可以复制,比如说log back对吧,这个配置文件对吧,比如说我这卡不卡连接这配置文件,但是你复制完了之后,你别忘了改呀,同学们对吧,我是不是202了对吧,我现在在连接的时候,我这0307是不是202203204呀,对吧?那么你们现在呢,那得102103104,对这个呢是第一个问题,那么第二个问题呢,如果说你复制的更彻底一点,同学们对吧,那在咱们这个当前呢,我给你们提供的这个这这个讲义上,我这里是不是应该有一个空格呀。对,就复制的同学哈,就是复制的同学对吧,我就我这主题这里应该是有空格了对吧,所以说呢,如果说你要碰到咱们这个问题的话,我就知道对吧,咱们班应该有两个同学对吧?哎,我就知道你的代码呀,不是自己写的是吧?这这这是什么,这这这是你那个对吧,这个直接从我这复制的对吧,如果自己写的话,你不应该在这里加空格对吧?然后还有一个什么呢?啊空明是吧,那我这平衡一下来,还有一个什么呢?还有一个呀,就是关于我们这个log啊,就是咱们这个log bike the log bike,有的老师我现在呢,我没用你这个什么log back作为咱们的配置文件,对,我就用我们原来的这个log包机,我发现也能实现同样的效果,也能落盘,对吧?然后呢,也能打印到控台上啊,其实它俩呢,其实一样的东学们,对,就是我现在log bag呀,其实就是我们log方间测的一个升级版,他俩是一个人写的。
04:43
啊,他是一个人写的对吧?哎,那么这块呢,知道啊,就相当于两种处理方式对吧?那咱们现在呢,一般long bike呢,对吧,在我们是新版本里边对吧,这个用的多啊呃,然后接下来咱们把这个完事之后呢,那么我们呀,得大概现在呢,来给我回顾一下,咱们呢,前面做的东西,我在这呢,是吧?来把这个画一画,这什么呢?这个是我们这个模拟数据的一个处理。
05:16
呃,那么首先呢,咱们在这里对吧,那么有一个夹包对吧,在咱们这里我给大家提供了一个我们这个加包。提供一个价包对吧,那么这个价包呢,它主要负责什么呢?就是咱们这个数据它的一个生成对吧?它可以生成我们这个模拟个数据,来生成我们这个模拟数据,然后接下来那么咱们现在在我们这个生成数据的时候呢,它可以通过配置文件,可以通过我们这个配这文件,然后呢,将我们这个生成的数据,然后发送到咱们指定的我们这个URL是发送到指定的我们的ul是吧?那么这块能理解吗?同学们。
06:05
结果现在呢,在咱们这里对吧,那我要生成数据,那么生成数据呢,我们给他提供了一个现成的一个价包,这个价包在哪呢?在我们提供的资料里边,对吧?那么这里有一个模拟器对吧?主要生成我们的用户行为的日志对吧?然后呢,在我们当前这里边有一个配置文件叫OB practice,然后接下来在到application practice里边是不是有一个叫Mo URL这样的一个属性配置啊,对吧,它呢可以帮助我们来生成我们现在哎,就是指定我们这个数据呢,要生成到哪啊,要帮咱们这个可以配置我们数据呢,要生成到什么位置,我先把这取一下啊。要把这个写一下对吧,这是第一个啊,这个数据对吧,它可以生成,那么数据生成完之后呢,那么咱们现在呢,那肯定得对数据进行处理啊,对吧,咱们得对数据进行处理,那么目前咱们在处理的时候,那么我是交给谁处理呢?我们在Windows啊,自己写了一个对吧,在咱们这个Windows我这机器上是吧?那我现在呢,自己就写了一个我们这个spring spring啊这样一个项目,我们自己去创建了一个spring BOO的项目,这个项目叫什么名呢?这个项目叫做我们这个劲茂,对吧。
07:17
然后0523,然后这个应该是log吧,对吧,应该有这样的一个项目对吧,这咱现在啊这个项目它是用来干什么的,用来去处理我们现在这个生成数据的啊处理我们这个模拟器它生成的一个数据,那么也就是说什么呢?也就是说我现在呢,模拟器把这个数据啊给生成了,那么生成完之后呢,它会把咱们数据发送给我们现在啊这样的一个的这个T贸利网3LOG的来对数据呢,来进行处理啊对他数据来进行处理,在这呢,我去啊连一下。
08:04
好了,那么你现在啊,你这个程序要想去接收到它处理的这个数据的话,大家想一想咱们这个程序那应该怎么来写呢?想一想,那我在咱们这个程序里边,对吧,是怎么样去接收到你现在对吧,这个发送的请求呢对吧,怎么样把这请求呢就处理了对吧?那么你请求地址是什么对吧,咱们在这里,假如说啊,我当前请求呢是对吧,呃,NTP对吧,然后接下来冒号,然后这个呢,是应该是我们这个Windows上它的IP,然后加上我们这个端口号port,然后接下来APP log是不是请求在咱们这个资源呀,对吧?诶我现在呢,请求的是我们当前这个资源,他怎么样就把这个东西交给他处理了对吧?那么中间他他大概对怎么做的,也就说你的程序啊,怎么写的,短信程序怎么写的,对吧,那么首先呢,咱们这里是不是有几个注解啊,我们spring book啊,它集成了我们这SSM集成我们spring短集成spring bc对吧。
09:04
那么首先呢,我在类上加一个注解,这个类上注解的作用干什么呢?这个类上注解它的作用对吧,就是告诉我们当前呢,这个类对项的创建不用你程序员自己创建了,我交给容器去管理,对吧?那么咱们这注解叫什么?Rise controller对不对?对吧,叫rise controller对吧?那后么接下来那我拿到咱们这个数据之后啊,我现在答到你的请求了,那我说那么解决交通部方法呢,进行处理啊,对吧,那么怎么样,我知道我这个方法来处理这请求呢?那在方法上应该去加一个注解,这个注解叫什么叫request mapping对吧?那接下来我方法在处理请求的时候,你把这个数据啊,是不是都给咱们当前这个路径发送过来,对吧?那么我接下来我是不是得从你的请求里边把这个数据获取到,对吧?那个注解叫什么?那个中解叫request body表示的是我现在呢,要从。
10:04
我们现在这个包的里边来获取数据啊,从我们现在的包里边来获取数据,对吧?然后接下来,那么咱们呢,对于我的数据啊处理我们呀,一开始最早的时候我就通过C做一个输出,对吧,但是我们说这种的方式不好,对吧,你说输出的控制台有什么用啊,没啥意义,咱们是不是可以落盘呀,那落盘的话,那咱怎么做呢?第一种方式对吧,那你可以自己啊去写流对吧,那你说写流的话,这时候还比较麻烦呀,对吧,你还得创建一个什么对吧,Print writer,然后一行行往外写对吧?哎,那么所以说呢,我利用现成的一些框架啊,我利用现成框架咱们可里使用log back对吧?然后接下来我直接在咱们log back配置文件里边,我主要呢配置两种,我们这是处理方式,一个呢,是我们这个打印数的控台上,那么另外一个是不是落盘呀,对吧,那么这块是关于我们的这第一种处理方式落盘,那么第二种处理方式呢?那我希望什么呀,我希望你把这数据啊。
11:04
接触到之后,然后呢,把它去保存到我的卡卡上啊,这里我希望呢,你要把这数据拿过来之后呢,往咱们的卡巴卡里边来给我保存,对吧?那么如果说你要想往卡夫卡里进行保存的话,那么咱们这里卡不卡肯定有对应的一个主题呀,对吧?那么咱们这里怎么划分的呢?它会根据你当前日志的类型对吧?来把咱们这数据呢保存到卡卡不同的主题中去,对吧?那么怎么来区分当前的启动日志还是事件日志呢?它里边是不是有个属性叫start呀,对吧?咱们呢,把我们当前拿的字符串给转换成JA森,然后接下来接森对象呢,它里边有一个属性叫start,如果说这star属性不等于空的话,那说明它是启动日志,如果等于空的话,那说明呢,时间日志啊,就看一看咱们当前的这大的属性,它是不是我们这个这个不离于空对吧,那然后呢,我把它发送到当前这个主题经贸一个呢,是。
12:04
大这是我的机器啊,对吧,这个6523,然后这个呢T疑问,然后呢,这个是0523啊,那么大概呢,现在是这样的一个处理啊,就是每一块啊同学们这个流程呢,大家一定要跟上啊,这块呢,其实相比较起来,到目前为止,咱们现在还是比较简单的啊,咱到目前为止现在还是比较简单的,对吧,然后把这个呢稍微停一下。
我来说两句