00:01
各位同学大家好,刚才呢,咱们完成了直播课程的列表方法,那下面我们实现直播课程添加的方法,什么叫添加方法?也就是咱们刚才呢,体验这个欢乐云的过程中,咱们是不是创建了直播呀,而我们通过代码也能实现跟刚才填的一个相同效果,把直播完成。创建这个过程呢,我们可以按照文档中的说明找到里面的方法添加直播里边有一个叫cosa的方法进行添加,这个添加注意啊,刚才咱们下载里边的工具类,把工具类呢已经复制到了我们的项目中,在这里边它叫做MT,里边有相应的方法,咱们一会儿进行调用就能实现直播的添加,添加之后在欢乐云里边能看到你家的这个直播,那下面咱们把这个接口我们来做实现接口中呢,在页面里边我们就是。
01:01
填写信息,大家看到包含这个。直播讲师登录密码、名称,开始结束时间等内容,最终完成添加,那下面我们来具体做一下这过程啊,按照课件中的顺序,首先第一部分我们先添加工具类,工具类呢,为了用到咱们最开始复制这个叫FT cloud,在里边我用这种方式完成注入,那下面我们来根据它复制一下。首先第一部分咱们在项目中我们先建个包,这个包我给它起个名字,我就叫config,然后在config里边,我创建第一个类叫emptyt cloud,我count config,然后这个类的内容我从里边复制一下。大家看一下啊,这个内容很简单,咱们加上data注解,然后下面这部分特别说一下啊,Configu前缀叫MT,那什么意思呢?它就表示啊,找到前缀是MT里边这个值,就是把这些渠道,然后在里边完成这么一个注入。
02:15
啊,就来做这个过程,包括你看啊,这是欢乐云里面的ID,还有投值,所以咱们加了一个cloud这么一个配置类,然后加上之后我们再来创建第二个类,把这个对象给它进行注入,就是艾特B进行注册,最终完成注入,咱们能进行使用。所以我用这种方式进行啊,当然你可能有别的方式,我就想这么来做MT cloud,然后把这段内容给它复制过来。大家看写法啊,首先把刚才这个类注入进来,然后把这对象出来,通过艾特B注造里边别的对象中能进行使用,所以现在第一部分我们加了工具类,这步就完成,完成之后第二部分在CTRL里边我们加上方法。
03:05
我来写一下啊。咱们加上一个叫A片。里边加上方法。直播课程的添加,下面写上方法,这个方法我们用POS提交,然后在POS里边加个名字,我就叫这个,下面加上方法public。加上方法就叫save,然后在save里边得到,就是页面中传过来的参数,咱们同样用这个request body得到,我在这里边写好了一个叫。Co for view里边有咱们添加直播课程一些相关的信息,比如咱们通过它进行传递,然后传递之后,最后我们调用service里边的方法做添加,我们起个名字,这个名字我就叫save。
04:05
然后里边加上这个对象。这个方法完成,最后我们来直接做个退,OK,所以现在CTRL咱完成,完成之后我在search里边把添加直播课程的方法做一个创建。创建之后,在实现类中最终实现这个方法。我们最后做实现。然后这个方法我们来最终写一下啊,这个方法先说一下它的过程是怎么样的,这个过程呢,其实我们就是调用刚才我们写的一个就是工具类里边,这个里边MT里边有一个方法啊,大家往下找啊,这个方法叫cos a的方法,传入相关参数进行直播添加,而直播添加之后咱们要向数据库表里边加数据,那加什么数据,我们看看这个表里面的特点啊。
05:04
大家看第一个表live course是这个直播课程表,咱要加数据,第二个表这个表live course description加入它的描述详情信息,第三个加入直播之后这个账号信息,所以我们添加之后,这三个表中基本信息表,详情描述表,还有账号表中分别要加数据。那下面我们来写下这个实现类的方法,在里边做一个最终实现。咱们开始做一下啊,首先我们的第一部分咱们先进行注入,就是把刚才写那个叫MT close给他先注入进来,MT cloud,刚才我在这个类里边通过艾特B已经完成这个注册,所以在里边我们能注入进行使用。MT。Cloud。
06:00
然后起个名字,我们叫MT啊,为了区分我再加一个。给它注进来,一会儿调里边方法进行实现,然后写完之后,下面呢,咱就来写一下这个方法,我们看怎么来做啊,我们具体实验一下。首先第一部分啊,因为咱后面可能添加这个是一个form view对象,所以我写一下步骤,第一步呢,为了方便,我们先把这个live view这个对象先转换成这个叫对象做个转换,这是第一步,那我们写下啊。Live。等于这个对象,咱们通过这个B里的方法,把view中的对象复制到这个live里面去,这是第一步,先做个转换,为了一会儿方便,然后转之后呢,因为后面咱操作中需要用到那个讲师的信息,所以第二部分咱们获取一下讲师的信息,为了后面使用。
07:11
那这信息刚才咱们通过远程调用写的接口,咱直接调一下啊,传入DD在这个phone view中应该有这个值。我们看到啊,Get把讲师对象咱们先得到。然后给它返回,我们就叫这个teacher,为了一会儿进行使用,这是咱的第二部分,然后这个完成之后,咱们下面呢,就来封装,我们最终添加那个直播课程需要的参数,最终咱们完成一个添加,那咱们下面来写一下啊,我们先看一下。小这里就是。调用方法添加直播课程,这个方法是刚才咱注入那个MT cloud里边有个方法,这个方法我们找一下啊,它的名字应该是这个名字,呃,刚才看到这个叫cos a的方法,这又可以完成在欢拓云里边添加直播课程,用这个方法就可以进行实现。
08:16
这个方法里边呢,需要传入一些参数,那这参数咱来看一下啊,哪些参数就这里边我们看到啊,第一个参数是什么?就是你的课程名称,然后第二个叫account的账号,就是账号是什么呢?是我们这个直播课程的主播账号,咱可以让我们那个,比如说讲师ID啊,作业的主账号都是可以的,或者你生成也可以,我们一会儿就用讲师ID作为他的主播账号,然后第三个是课程的开始时间,就是你直播的开始时间,还有你的结束时间这个值,另外有你这个昵称,昵称咱可以用那个讲师名称就可以了,另外有讲师的介绍,以及最后一个叫options,就是里边的其他参数,而其他参数中有什么呢?比如说你这个直播类型,你直播的密码等信息里面都存在,所以咱们向里边传入这些参数就可以了,注意啊,前面参数呢,都是字符。
09:17
符串,最后一个参数是一个map集合,所以咱们需要六个map集合,然后来传递其他参数,那下面我们来写一下这部分啊,首先我们这么来做啊,先创建一个卖部集合封装。直播课程需要的其他参数,因为里边是需要的,那咱们建一个外集合,就是按照这个结构,它是一个哈西麦啊,那我也写一个哈希map了。哈西麦克。然后咱们起个名字就叫options,等于上一个哈西map,然后向options里边。放入它的数据啊,这个数据呢,我从课件中复制一下啊,咱看一下它的文档中都有,我就从我课件中间写到啊,你看啊A里边就是这些值啊,这里边都有描述。
10:13
那我从里边直接复制下啊,比如现在我们就给它传入这两个值,咱们看到啊,首先第一个值这个它是那个直播类型,咱目前用的是生活直播类型,就刚才在文档中能看到生活直播,另外第二个是你这个密码,就是直播的密码给它也传进去,所以这是我们放这个数据,然后下面呢,在cosa中传入他的相关值,就是咱刚才看到的里边的。这几个参数,那咱们一个一个进行传递,我把这段注释拿过来,咱们对照它来写一下里面的具体参数,给它传一下啊并不难,只是参数比较多,所以咱们需要给他详细来看一下,对照这个不要给他传错就可以了。
11:00
咱们看到啊。就这里边。把这个先加个注释。首先我们看第一个啊,第一个是你的课程的名称,那我来传课程名称,通过里边那个叫live cos里边的方法,这个方法叫get cos name,这就是第一个参数,咱就完成了,然后再看第二个参数,第二参数是你的主播的账号,这账号只要V就可以了,比如现在啊,我就让这个讲师的ID作为主播账号,加上get ID。因为它是一个浪类型,咱加个tore变成类型,这是第二个参数,主播的账号,我们用讲师ID作为这个账号就可以了,然后第三个咱们看啊,是你课程的开始时间,那我们来写一下啊,开始时间呢,有个格式要求,所以咱们直接上一个叫。
12:01
Date time,用这个日期时间工具类,通过live course取到它这个开始时间,把开始时间转换成咱们要求的那种格式啊,我给他转换一下啊,我们看这个结构不要写错。Get time。然后在这个后边我们做一个转换啊,就这位置加上一个叫to string,然后to里边加上我们的一个相关的一个格式。啊,这个格式,为了防止大小写写错,我把这个复制啊,就这个格式,年月日小时分秒这个格式,把这个我给他拿过来。这个啊,咱们就。复制过来是里边的这么一个结构。呃,放到一个字符串中啊,少写了一个引号。所以现在这一部分结构我们就完成了,表示直播的开始时间。然后这个之后呢,下面再用同样的方式来设置它那个直播的结束时间,也就是这个值跟它一样,只取的值不一样,结构代码都差不多,我把这复制改一下啊,结束时间的方法咱们看到应该是这个方法,Get and time,这个叫结束时间,把这个写过来。
13:22
所以以上啊,这几个主要参数都有了,然后这个之后呢,下面还有参数,咱们进步写一下啊,看这里边除了这个之外,还有一个叫昵称,昵称呢,咱就用这个讲师名称了啊,用它进行实现。那我写一下啊,下一个参数。我通过这个描述啊,其实就这几个。我把这部分拿过来啊,咱在注释部分写的详细点,为了各位看到更明确。这是我们那个主播的昵称。这个然后另外。有这个参数叫account info,是主播的介绍,比如这个讲师啊,是什么介绍,里边有这个描述。
14:04
主播的介绍,然后下面有一个叫options,是这里边的其他的参数。刚才咱们写了map集合,也做了封装,一会咱给他直接传就可以了,以上这个参数,那咱们进一步写下啊。下一个参数是这个昵称,我们通过讲师名称直接取到。我们写一下啊。诶,写错了啊,Teacher点上。这个get name讲师名称,下面有讲师的介绍,通过teacher我们同样取下。Teacher get这个。应该是找到这个值啊,应该叫get这个。Intro啊,这个intro怎么介绍,然后除了这个之外,还有最后一个,就这个其他参数,其他参数呢,刚才我创建一个map集合,起的名字叫options,里面设置一些参数,那咱最后把option给它串进来,所以现在啊,咱们通过这个结构把这个就完成了,就是通过这个方法完成了欢特云里别直播的添加。
15:19
这里边有异常,咱用拆开着给它捕获一下,现在脚这里啊,然后完成之后,这个添加之后呢,它会有一个返回结果,咱起个名字,比如我叫res,通过返回结果后面咱能判断一下它是否是成功的,但是目前的结构已经完成了,这个我做个输出,放在咱们后续测试。所以现在啊,这部分我们就做到了,就是调用欢拓云里边提供的方法进行实现可以了,你把这方法按照这参数给它传正确就足够了,然后这个之后下面呢,咱们做个判断,注意啊,说一下判断怎么做,之前呢,咱们复制过一个工具类,这个工具类叫common造就除以你的返回结果这么一个工具类,那这里边我们就要用到它了,做一个处理。
16:10
啊,这个代码咱们复制过来看一下啊,因为很简单。咱们看这个结构,我把这个做个复制啊。大家看一下啊,各位自己写的时候直接复制可以了,然后你看这代码什么意思啊,首先咱们把这个res通过刚才这个common工具类做一个结果的转换,转成一个Jason的一个格式啊,就变成这种格式common。然后变成之后,在这里边我们做个判断,咱们判断一下啊,这里边有个编码叫get code,如果code值是这个值就这个零,那就代表它是成功的,就表示你直播就创建成功,所以里边我们做了一个转换。就是把这个创建之后的返回结果。
17:02
做了一个判断,如果结果值是这个code所在的零,那就代表咱们创建成功,创建成功之后我们做后续的处理,如果它创建不成功,那我们再做其他处理啊,在里边我这个位置加上一个else。L就表示这个值不是零,不是成功,那表示失败了,失败的话呢,在里边咱就直接给它抛出一个自定义异常。就是硅谷课堂EXCEPTION20001,然后提示。直播创建失败,这位置有它的输出结果,咱给它也输出一下啊,就是有它那个反应结果,通过common里边这个get msg返回它这个失败的信息,所以现在啊,这结构完成了,完成之后咱们写这里边,如果说他创建成功,创建成功之后咱们怎么做呢。
18:02
写一下它的过程啊,首先咱的。第一步怎么做呢?我就是添加直播的。基本信息到直播的基本信息表中,第二个添加直播那个描述的信息到描述表中,第三个再添加直播这个账号的信息,比如直播里边的那个账号,包括密码等等,值都是什么?咱们做个操作,这些值里边的主要部分通过common result都可以得到,所以咱们后续就完成这个过程。以上啊是咱写这个流程,所以各位按照过程能把接口最终能写出来。咱们先做到这里,然后一会儿把剩下这个三个添加在最终完成。
我来说两句