00:00
好,那我们已经把base map里面的增删改革的方法呢,进行了一个简单的测试,好,那我们在之前呢,咱们在进行这个my bet plus的简介的时候呢,然后咱们就说过myt plus它不单提供的有通用的map,它提供的还有通用的service。也就是说呀,我们现在呢,咱们在使用map的功能的时候呢,然后我们可以直接来使用他所提供的通用map中的方法,而我们的service呢,也可以直接来使用它所提供的通用的service中的方法,那我们可以来查看一下我们的官网,在官网上呢,有一个核心功能,其中有一个crud接口,然后在这里面呢,就有我们相关的一些说明,就比如说他所提供的service的接口叫做I service,然后进一步封装了咱们的增删改查的操作,而且其中的方法为了和我们map中的方法呢,然后避免混淆,然后呢,其中的方法,这个方法名呢,然后也有一个不同的一个区别,就比如说然后我们的I service这个接口中所提供的查询的方法是以get,然后和list开头的,而在我们的base map里面,大家还记得不是以什么开头的,Select开头的,对吧?删除的方法service中用的是remove开头的,而。
01:18
我们的base map里面用的是delete开头的,好,当然呢,这个分页的功能,然后咱们用的是service中用的是page开头的啊。好,那我们该如何去使用咱们的I service呢?因为它毕竟是一个接口,那所以说咱们的I service还有一个跟它相配套的一个实现类,然后叫做service I PL,然后大家可以来看一下咱们的笔记,然后给大家写出来了,大家来看啊。首先呢,就是咱们的I service,然后还有呢,一个就是我们的service IM PL,这个是它所对应的一个实现类啊,因为I service呢,然后它是一个接口,而service I PL呢,是它的一个实现类,那我们可以现在把咱们的idea打开,然后通过咱们的查询功能来查找一下I service和它的实现类,然后咱们先简单的看一下,比如说大家看啊,这个是service I'm PL,然后我们再来查询咱们的I service sev OK。
02:19
好,然后咱们可以来看一下,先看接口吧,接口里面的方法呢,然后大家看都是save开头的,对吧?咱们把这个结构给打开,然后save开头的就是添加的方法,保存的方法,Save or update,然后是添加和修改的方法,然后这个大家注意,因为毕竟添加和修改呢,它们之间的区别还是很明显的,然后呢,添加跟修改一般咱们所操作的参数都是一个实体类对象,而添加功能的参数是没有ID的,实体类中是没有ID的,而修改功能呢,所操作的参数中实体类,实体类是有ID的,所以说他们其实为什么叫save or update,其实就是会对我们当前实体类中的ID来进行一个检测,如果有ID就是修改,如果没有ID就是添加,这个大家注意remove开头的删除的方法,Update开头的,修改的方法,Get以及list开头的,然后是咱们的查询的方法。
03:19
好,然后这个是我们的接口,然后下面呢,咱们来看一下这个实现类,这个实现类里面呢,大家来看它的泛型,泛型呢,I service中的泛型,然后是我们当前所操作的实体类对象,而service I'l这个实现类中的泛型,然后一共有两个,首先第一个大家来看是M对吧,然后第二个然后是T,那大家可以来看一下,然后这两个是什么意思?首先第一个M其实就是谁啊,就是我们当前自己所写的map,这个大家注意,然后第二个T就是我们当前要操作的一个实体类对象,所以大家在用的时候一定要注意啊。
04:01
好。那我们有了这个service I PL的实现类和I service这个接口,那我们该如何去使用呢?我们能否直接来使用service I p,大家注意,我不建议大家这样去用,为什么?因为我们以后咱们的业务逻辑是非常复杂的,对吧,五花八门,各种各样,我们需要根据我们自己的需求来完成我们的业务逻辑,所以说这个service I'p它一定是无法满足我们的需求的,所以说就像是我们在使用咱们的map一样,我们自己去创建一个user map,让他去继承咱们的base map OK吧,好,然后这个时候我们是不是就可以既来使用我们的base map所提供的功能,也可以来实现一个自定义的功能,所以说我们的service该如何来使用,咱们下面呢就把我们自己的service来创建一下,那我们为了来使用我们当前咱们的my beat plus所提供的通用service的功能,我们可以来选。
05:02
则继承他所提供的接口来点击右键创建一个类,这个类呢,咱们就叫做service.user service。OK,创建完成之后,然后下面这个是我们service的接口层,咱们让他去继承我们所提my be plus所提供的通用service,它的泛型大家记好,是我们的实体类对象,OK,然后我们的接口创建完成之后,那我们当然为了扩展我们自己的功能,我们还需要有相对应的实现类,来咱们把实现类创建一下,那我们的实现类一般都是在IMPL这个包中,对吧?点userer v service I PL,好,然后呢,它我们应该怎么去设置呢?大家说啊,首先我们需要让它去实现我们自己所写的接口,叫做user service。那这个时候他就会报错,为什么会报错呢?大家想想,因为我们自己的user service接口去继承了I service,那所以说I service中所有的方法是不是都要继承给我们的user service,所以说我们在实现内中就要对它的方法进行一个重写,那所以呢,大家想想我们现在应该怎么去重写,我们需不需要把这里面所有的方法都自己重写呢?不需要,因为我们的I service有自己的实现类,所以说我们在这只需要让他去继承我们当前my be plus所提供的实现类就可以啊。service I'p它的泛型大家记好,首先第一个,然后呢是MM,表示的是我们当前要我们当前所操作的一个map接口的一个类型,叫做user map,然后第二个是我们当前用来操作的一个实体类类型,叫做user。这个大家注意。
06:57
好,那这个就是我们当前咱们的service接口,以及我们当前咱们的service实现类的一个写法,如果大家要想来使用my plus所提供的通用的service的话,那我建议大家自己去创建一个service,那这个时候我们既能够使用通用service所提供的功能,我们也可以来使用自定义的功能,OK。
我来说两句