Mybatis-Plus的Iservice接口
如下为Iservice接口的图示,但是在学习这部分内容时有个很大的疑惑,为啥不直接注入mapper层,而偏要在service层中去实现mapper层已有的功能?
先说Service层的实现逻辑:
基于SSM的框架是service接口与serviceImpl类,spring通过自动代理,创建出serviceImpl层,在serviceImpl层中又使用@Autowired去注入mapper,并且在service层中使用mapper中定义的持久层语句来进行增删改查。
现在由于要让service去 继承 Iservice的方法,又由于serviceImpl需要去 实现 service,所以现在的关系是(实体)serviceImpl 继承 (MP自带)serviceImpl 实现 (MP自带)Iservice。
但是现在Iservice中有大量的增删改查的方法,service去实现Iservice的方法就会很臃肿。
所以去增加一个IserviceImpl,让service去继承IserviceImpl并且实现Iservice,那么所有的方法统一存放在IserviceImpl就可以了。