00:00
然后这个最终调用怎么做呢?第一步咱们也是就是加那些注解,那些依赖咱都加过了啊,就是加这什么。依赖,然后里边加一个注解啊,都有了,包括加那个相关配置,然后都加完之后,咱也是建一个interface里边指定调的服务名字,这上午都加过了,都加完之后在这里边呢,Interface中咱就把那方法做定义,就是定义一下。我们调用的删除多个视频的方法,那方法怎么定义上位各位说过了啊,咱做法很简单,你就把那个vod ctrl中的方法给它叫复制过来就可以了,就把它做个复制。那咱给它就复制过来,然后复制之后在里边呢,把它那个路径改一下,改成咱那个完全路径,就加上上面这个e d vod video,然后后面加一个叫delete be,把这个给它需要改一下。
01:00
这个啊,是我们定义的这么一个方法,所以咱们就完成了,就是在这个vod client中把方法自定义,然后定义之后,最后咱们来来来到我们的调的过程中,最终调一下这个方法。那咱找一下啊,就是这个删除课程这个方法我们找到。应该是在这位置啊,它叫remove cos,那我们进入到这个方法中,这是interface,点这个到它的实验类中,在实验类中里边有这么多,第一个是根据课程ID删小节,然后删章节,删描述上课程,然后咱们找应该是第一个根据课程ID删小节。把这个找到最终到方法中,就这位置之前咱家了土豆,土豆这个注释啊,那下面把这个完成一下啊,咱看怎么做。就是现在在他new方法中是这么一个逻辑,根据课程ID是不是删小结呀,而咱现在是不是要根据课程ID去删那个视频啊,那你删视频的话,首先视频ID首先要给他查出来才能删,所以咱们做的第一件事情就是把这个课程里边的所有视频ID都给它查出来,这就是我们要做一个事情啊,那我们来写一下啊,就是第一步操作。
02:20
根据课程ID查询出课程里边的所有的视频的ID,而视频ID你在小节里边嘛,所以咱就查这个小节表,也就是说根据这个ID把里边的这些视频ID都查出来啊,这时候我们要做这个事情,那咱们把这方法写下啊。查询嘛,肯定用这个query rapper加上一个叫edu video有这么一个对象,然后我们起个名字,我就叫这个rapper。Video。其实就是它啊,我再重新创建一个啊,我给它区分一下啊,等于new上一个cor rap,这是第一个,然后创建之后再向里边设置它的条件,因为咱要根据课程ID查视频部分,那里边我就写上一个。
03:10
控制ID啊,就是它。在这个位置加上我们的课程ID。这是一个方法啊,就是设置它的条件,然后加上之后,咱就调这个base map中的方法做个查询,在base map中我们用的方法应该是里边的。是不是这个select list吗?因为一个课程中它可能会有,当然他可能没有视频,可能有一个视频是不可能有多个视频,所以大家用这个select list里边传一个叫rapper video,最后返回一个list集合啊,就这个集合。给它改个名字啊,叫e video list,而这集合中会有我这个课程中的所有小节对象,但是咱要做到的肯定要得到里面那个视频ID。啊,这个,然后咱从里边取就可以了,这是我们做的。第一部分啊,咱就做到了啊。
04:01
然后做到这里呢,就是咱往下给他便利取值是可以的,但是咱可以把这方法稍微给他更优化一点。怎么优化呢?给大家说明。因为咱们现在删除视频,我是不是只需要查视频ID就可以了,也就是说啊,我们在写所有语的话,咱可以这么写。Select加一个叫video这个source ID,然后from加上我们这个叫e video这个表,再加上你这个条件等等,大要写语句就可以这么写,直接查这个视频I就足够了,而没必要再查别的字段,所以现在咱代码中也可以这么做,只把视频ID查出来,而别的纸我们就不需要查询啊,那咱给他就做一下啊,咱看怎么做。不知道各位同学是否记得啊,这个知识应该是咱项目第一天讲到的。不是,各位是否记得啊,我大概提一下这个知识点是什么啊,就是现在我要查的话,咱们默认肯定是查里面的所有字段,但我现在只想查里面的video source ID这个字段,它就叫做查询指定的列,而查询指定的列呢,在咱们这个rapper里边有个方法。
05:17
如果各位不记得,要给他牢牢记住啊,这个方法,因为咱后面有用的就是它。叫什么select,在里边查你指定那个字段的名字,比如我们叫video奏D,那这样的话,他把这个字段的这个对应的值就可以查出来,用的是一个赖的方法啊,因为咱们只需要练ID,别的值我们不需要。所以把它插就可以了,就是里边这个代码。这各位知道啊,然后查完之后,咱下面就是从这个集合中把里边值取就可以了,然后最终调方法可以做到,那因为要调这个vod,那咱把它先注入进来啊,就是注入。这个vod。
06:00
Client我们来注入。加上一个叫凹。Private vod client,然后这叫vod client,咱们调里面的方法,把这个给他删除一下啊,咱看里边要传什么啊。点上一个叫做这个。Delete,半尺。但是你注意啊,这个方法中的传的虽然是个粒子集合,但是他传的应该不是咱们这个离这个粒子集合,他传的是什么呢?刚才咱们写过了,咱们看这方法啊,我们再看一遍。找到我们刚才那个CTRL里面啊,咱直接看service。咱要传的这个集合肯定是例子集合,但是里边的值应该是这个效果就是加个泛形字符串,里边有你的句体的ID,比如11233,然后给它变成这种形式,而不是里边传播对象。那咱们给他最终完善一下啊。这个方法就是咱要做的事情,就是我们把我们的。
07:02
这个集何中的值给它取出来,然后给它就是变成我们的这个样子啊,这是我们的做法,因为它传的可能是这种形式,那再给它变一下啊,这个变的话呢,没有特别好的方式,咱只能是把它便利取出来,再放到这里边去就可以了,那咱给它放下啊。我先写一个历次集合。List,然后这个叫video ids,等于new上这么一个list。创建一个集合,然后创建之后把我们查出来这个历史集合做一个变历。遍历一下,遍历之后呢,得到里边的每个这个值。获取一下啊,就是get I得到每一个这个E丢video对象,然后得到之后,咱从E丢video中把里面那个就是视频ID给它取出来,这个视频ID取出来,Video搜ID取出来之后,最后就放到我们这个。
08:00
集合中去啊,就是video ids这个。集合里面去,那我们来放一下啊,点上A,然后里边放这个叫video so赛地。这样的话,这个咱就完成了啊,它主要这么一个过程,就是把里边的值取出来放到这个例子中,然后放完之后咱们把这个video ids直接传过来,它就会根据你的多个视频,然后删除多个视频ID,删除你的视频。写一下啊,多个视频ID删除这个视频,所以现在这个调用代码我们就做到了,就是这么一个基本过程,然后你删完视频之后再去删里边那个小结,但是咱不要先删小结,你要先删小结的话,视频ID就查不出来了,所以咱们先删视频再去删小节,这个啊调的方法完成。然后完成之后呢,在里边啊,咱们把这地方稍微给它完善一下啊,怎么完善呢?咱看几个地方,第一个地方大家看这行代码中。
09:04
就是我现在小节里边视频ID是不是可能是为空的,里边可能没有值,如果没有值的话,咱就没必要把空再放进去吧,所以这个位置咱做个判断啊。加一个异物判断。就是如果说这个值不等于空,那咱们再往里面放数据啊,那我加一下啊,String u.is empty,加一个叫video so地,如果这个值不等于空,咱把它再放到我们的。历史结构中去啊,这个这个写法啊,把这做到了,然后做到之后这个位置也做个判断,因为我现在就是我这么放,我这个小节里边可能一个视频都没有,那最终这个集合可能以为空,如果它为空的话,咱也没必要远程调用去删除。那这个也做个判断啊,咱也判断一下。小D位置啊,就是如果说这个video这个ids值,它也不等于空。
10:05
注意啊,这怎么判断呢?因为它是一个例子集合,所以例子集合判断咱是用它呀,S,如果S大于零表示里边有值,有值的话咱再调方法做这删除啊,所以现在把这个做这些完善,就是它里边没有值,咱就没必要再去删,因为它里边为空,有值的话再删除。就是它S大于零表示里边有ID值,咱调这个远程接口最终做到,所以这个啊,我们就完成了关于调的过程。这个过程稍微麻烦那么一点点,但是里边也不复杂,它就是你把多个视频ID查出来,然后最终给他删除掉。这个啊,我们就写出来了啊。然后把这个给各位,就是直接截个图。这是第一部分。我给他直接就。截过来啊,就是一个调的这么一个过程。
11:03
就结一部分啊,然后这里边还有就是后面那个。调方法做个删除。主要是这两部分啊。所以现在咱就把这个删除课程,删除视频这个方法咱就完成了啊,主要这么一个开发啊的过程。
我来说两句