Service层采用接口注入的问题

来源:7-1 通用service

Lair

2019-10-09 10:33

service层采用接口的方式,接口UserService正确继承了 IService并添加泛型,实现类 UserServiceImpl extends ServiceImpl<UserMapper, UserEntity> implements UserService,这样写的话,默认注入的是一个 service 代理(proxy)类,运行方法的时候会报错,当然这也是可以解决的,在实现类上显示注解 @Primary 或者注入的时候采用 byName 可以解决,但是,如果这样的 Service 多了,每个都需要这样处理,是不是太麻烦了,而且 spring 容器里仍然存在另一个代理对象

http://img2.mukewang.com/5d9d456a0001249317890402.jpg

http://img.mukewang.com/5d9d456b0001b36114990908.jpg

http://img3.mukewang.com/5d9d456c0001296c11940782.jpg


写回答 关注

2回答

  • 老猿
    2019-10-10 09:25:57

           正常情况下是好使的,我怀疑应该是你的@MapperScan注解,配置的包扫描路径不对或扫描范围过大。@MapperScan中的路径应该只包含Mapper接口,不能扩大范围将Service接口等也扫描进去了,不然它为认为你的service接口也是Mapper接口,从而导致错误。

  • 慕粉1053558844
    2021-03-29 18:05:54

    我也遇到了这个问题,这个要怎么解决呢

MyBatis-Plus入门

MyBatis-Plus框架入门必学课程!

56140 学习 · 381 问题

查看课程

相似问题