00:00
下面呢,我们继续来实现优惠券接口,刚才我们写到了最后这个接口,获取已经使用的优惠券列表,做一个条件查询带分页,刚才咱们把CTRL已经完成了,现在开始编写service里面的方法,那这方法怎么做,咱们做一个进一步的分析,我在图里边给大家画一下。获取已经使用的优惠券的这个列表功能,那这个功能里边呢,因为咱们获取一种使用的列表,要查询是咱这个表叫component里边的数据,而在数据中大家看啊,这个表中有个字段叫user ID是什么?是不是用户ID啊,所以这里边你看啊,他只存了用户ID,比如现在我想把用户的名称,手机号等信息也获取到,所以这个过程中咱需要把数据做一个进一步处理,那怎么处理呢?给各位说明,我先把这需求写一下啊。
01:02
小的位置。就是咱们要查询我们这个就是已经使用的优惠券的。这个表中的数据,而在数据中呢,它有一个就是user ID,也就是用户ID,但现在我们想要获取一下用户的其他信息,比如说你的用户的名称。用户的手机号等。所以说这个过程中呢,我们就需要把这数据再做一个进一步获取,那怎么获取呢?给各位说明啊,在那过程中我们就用到词人口头里边的另外一个组件。叫做费实现一个远程调用过程,那咱怎么做,我在里边给大家画一下啊,比如一会儿我们这么来实现。咱们再来建个新的模块,这个模块我们就叫做service user,就是用户模块。
02:00
然后这个模块呢,是我们刚才这模块就是这个activity模块,也就是那个营销管理模块。这个模块,然后在过程中我们怎么做呢?首先我在wi user里边呢,咱们来写一个接口,这接口做的什么事情呢?根据我们的用快ID我写一下啊,这接口做的就是根据UCIID获取用户的信息,就来编这接口,然后咱们在activity这个模块中,通过远程调用来调用U里边接口,最终根据ID把数据得到,所以这过程中我们要做一个远程调用的这个过程,而远程调用我们要用到什么呢?第一个可里边的NAS注册中心,咱把两个服务在na中进行注册,然后用fin或者叫open实现远程调用过程,所以一会儿咱就来做这个过程,所以咱下面来建右侧模块写接口,最终远程调用把数据完成这终封装,这是咱们下面要做的事情。
03:09
这各位先知道啊,那下面我们开始写一下啊,我就按照课件中的流程,咱们先开始建优色模块的新闻内容,首先第一个我在service这个模块中再建一个子模块。我来创建。这个模块我们的名字service_user,把这个先进行创建,这是第一部分,然后创建之后第二步咱们生成用户的相关代码,但是这过程中肯定需要建立个用户的库和表,这个语句给各位都共享过,各位把之前的语句的表和库都创建出来,所以咱们下面就根据里边的这个表叫user info表,把它相关的这个代码生出来。那咱们来写一下这个过程,我来写一下啊。
04:00
这些我先都关掉,找到代码生成器在里边,我们快速改一下。咱们找到。在这里首先第一个要改的话是我们这个项目这个名字service右侧,然后第二个改一下我们的数据库,咱的数据库叫这个下划线U,就这位置,注意不要改错啊,然后下面是你的包的名字,我们改成。硅谷课堂user最后是表的名字,咱到表的名字,这个名字UR_ino。这个改一下啊,所以现在这些我们就完成了,完成之后把代码执行生成user,就是用户相关代码,然后咱来编写它的接口。咱们等他先生出来。现在啊,代码是生出来了,然后咱们快速改一下啊,第一个把它的实体类改成model中统一的十几类。
05:03
这个先删掉,然后咱们改一下里面的。Service和map部分,我来快速做个修改。先加上这个。然后咱们在的实现类中把这11类同样改一下,最后再改它的map,也就是这个部分。所以现在啊,这个基础代码生出来了,然后下面的按照之前相同的方式创建启动类,然后创建配置文件,最后编写接口,咱们写下啊。下面我来创建启动类。我们起名user application,然后在类里边加上它相关的注解,把这个咱们过来。大家看一下啊,第一个第二个那个注册,第三个这个我就放到用类上面,或者说你放到配类也是可以的。
06:02
在里边创建,创建之后,最后咱们把它的配置文件创建出来。application.properties。配置文件中加上最终的这个内容,也就是咱们的最后的这个代码。我们看一下啊,目前的模块8304USER加上库,加上你的相应的内容,所以现在啊,这个结构我们就完成了,完成之后呢,下面咱们在CTRL里边来编写我们的接口,这个接口很简单,就是根据用户ID得到用户信息,为了一会儿做这个远程调用做准备。那咱们写一下这个接口,在CTRL里边的,首先先注入service。User info。Service注入之后,下面写上它的代码,那这个代码的结构我从课件中复制一下,就是根据ID获取用户信息。
07:05
就是这么一个结构,然后下面写上它的方法,咱把依赖先引入第一个S的一个依赖,第二个get mapping,然后是user info,用pass valuable取到ID值,下面咱们调用user info里面的方法get白D,根据ID得到用户的信息,就是U侧info,最后把信息做一个捋退。直接咱就吞这个右侧info。大家注意啊,我接口的写法,你发现啊,我接口没有返回造的对象吗?咱之前是不都是造的,我这里边为什么返一个U侧音O,为了咱们后面调用取值方便,如果说你反映result也可以,但后面取值还需要通过result把里面直带取到,咱为了方便我就直接反一个对象放在咱们后面取值使用啊,当然反应也可以,这样做更加方便,所以现在这个接口部分我们就完成了,这是咱们开发这个接口,开发之后下面呢,我们进一步往下实现。
08:15
因为现在我们最终都是用网关访问,所以把这个user咱在网关中也加个配置,为了后面方便。可能暂时用不到,后面肯定都会用到,你看路径啊,Din user,然后在网关中咱们加上这么一个配置的规则。我在里边。加一下啊,这里边我改成二。就是。二这个二,然后大家看user user加上user这个径的规则,User user现在这步也完成了,完成之后呢,下面咱们进行远程调用的设置,这怎么做呢?给各位说明啊,咱的做法就是呢,创建一个interface,指定你这个接口所在的服务,然后把接口在里边进行定义,最终远程调用,通过这个interface我们进行调用,这是咱们的一个做法,而这个过程我们可以把它呢。
09:17
写到你当前的一个调用端里边,另外啊,咱这里边为了结构更加清晰,我就建个新的模块,专门做这个远程接口定义,或者最终我们调用,那下面我就按照我这个规范来做到了,那怎么做说一下啊。首先第一个在负工程里边呢,咱们再来建个新的模块,专门做这个远程调用接口的定义,这个模块咱是个慰问工程,然后我起个名字就叫servicelan,把这个模块进行创建,这是咱的第一部分。然后创建之后在模块中再来建个子模块,咱们叫swis user can,因为里边可能会有很多内容调用,这里边专门是user,所以在它下边。
10:07
咱们再来建个模块。这里面的S2C就可以删掉了。然后我把这个模块做一个创建。就这个。所以现在这个完成完成之后呢,在里边我们开始做这个接口定义,定义之前咱们先引入依赖,我把依赖咱们复制过来,然后咱给它引入啊,这依赖呢,我就放到service client里边了,因为后面有很多模块都需要用到。然后在里边引入依赖啊,咱看一下名字给他改一下啊。我们这个名字应该叫啊,但是这个名字。这个啊,先改一下就是它,然后下面有你的model,包括你看啊,有这个web,有这个open c做到远程调用,现在依就引入了,然后依赖用之后到下一步操作来到service user里边,在里边一个interface,把咱们刚才的接口在里边完成定义。
11:16
那下面咱们来写一下啊,我现在进行创建。首先我建个包。Com点。At谷interface interface起个名字,这个名字。Client啊,然后把它创建,创建之后怎么做?第一步在interfeit上边我们加个注解叫in client里边写什么呢?就是指定下你要调的接口所在的服务名字,咱的接口是不是在service优色模块,所以你把优色模块那个服务名字在里边写上。
12:06
咱们到配置文件中看一下啊,它的服务名字就这个杠user,所以里边就加上接口所在的服务名字,下面写上接口的参数和路径,那怎么做说一下啊,做法很简单,你就把这一段。代码就是把它的方法部分直接复制过来,然后复制之后注意它的路径补充完整,什么叫补充完整?它类上面是不是有径,所以你就加上类上边和方法上边两个地方路径,最终构成一个完整路径。所以咱们现在啊,就把这个接口在里边做了一个定义,这是咱们远程调用的这个过程,然后这个定义之后,下面呢,咱们最终就可以开始做这个调用了啊,但是现在这个准备工作需要完成。给各位说一下啊,咱目前做法就是优色模块中呢,我们建了这个根据ID查询用户信息的接口,然后咱们又建了一个新的模块,就这个模块叫service。
13:12
下划线。然后在里边有一个service user,在这里边我们定义了我们这个要调用的接口信息。就是做了一个定义,写下啊接口的信息,包括你的你的参数等等,然后这个完成之后,最后我们在service里就完成它最终的这个调用。那咱们下面进一步来实现一下啊,目前把优色模块已经完成了,那完成之后怎么做写一下啊。首先第一个咱们在activity里边把刚才这个user模块先给它注入进来,为了能做这个调用,我就直接复制一下啊,把这个注入,然后注入之后咱们下面在activity里边的启动类上边需要加上一个注解,为了做到变成调用这些注解,如果你不加它是不能调用的,或者调用会有问题。
14:13
那我们来加一下啊,加什么注解,就这个注解。我写一下,它叫做unable。Fe。进行调用,里边指定你包所在的路径,com.at硅谷,大家看啊,因为我现在啊,定义接口是在这里边,我调用是在这位置,如果你不加这段话,那它不能用这个远程调用,所以咱们需要把它加上只有你的包的路径,因为我的包前面部分都叫com.at硅谷,所以把这个加上,为了实现远程调用。所以现在啊,这个调用的准备工作就都完成了,最终咱就开始编写代码,完成最终的效果,目前啊是优色模块的接口创建,然后定义,最终咱再开始做这个调用。
我来说两句