basemapper与Iservice

在basemapper中是直接使用接口的方式继承basemapper的接口的,

 

 然后直接使用UserMapper调用方法,实现由mybatis-plus提供,但是只是提供的单表查询的方法,多表查询需要自定义方法

自定义方法直接在UserMapper接口中定义 mapper接口, 然后中resource中定义mapper的sql映射,这里是跟mybatis是一样的

而在Iservice中就有区别了

Iservice是接口,是有接口实现的,但是以接口与实现类的方式实现的,接口类:Iservice  实现类:serviceImpl

如果直接以继承的方式 继承serviceImpl 就无法自定义方法了,因为mybatis映射sql需要mapper接口

只能单独的去定义出自定义的mapper接口。这样在使用的时候就有点麻烦

所以不直接继承类,而是自定义接口 去继承Iservice接口

然后写类 实现自己的接口,这里就要实现Iservice中的方法,因为自己的接口是继承了Iservice接口中方法,所以需要实现,但是不能自己去实现,没必要

所以在自己的类上 直接继承serviceImpl,因为serviceImpl本就是Iservice接口的实现,这样就自己就不用去实现Iservice了

这么写就是为了要接口,mybatis自定义需要使用接口,当然可以自己重新单独的是写mapper接口,这样就跟上面一样 使用会很麻烦

 

 

 

posted @ 2022-11-14 04:42  咖喱给给啊  阅读(1073)  评论(0编辑  收藏  举报