请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

mapper的bean name

https://img1.sycdn.imooc.com//szimg/5a250c8d0001a94c03770128.jpg
老师,像这种mapper的bean的名称,是按照什么规则Autowired呢?
我们以前设置别名都是在实现类上加@Service("")可以直接指定bean name,这样mapper的话能不能也指定bean name呢,或者如果有两个同时实现一个dao接口的mapper,那么@Autowired的话会报错。

正在回答 回答被采纳积分+3

2回答

Geely 2017-12-05 09:45:17

mybatis的xml不用加文件 ,在application-datasource里面会扫描到这个xml,自动加载。


同学可以看一下这个配置文件,有mybatis scan的配置


0 回复 有任何疑惑可以回复我~
看你笑呵呵 2017-12-04 17:35:00

@Autowired是按照类型自动装配的,你在@Service中不指定bean name也可以,如果你想如果两个同时实现一个接口的mapper也要使用@Autowired的话可以结合@Qualifier使用,这时就需要指定@Service中指定value了


如果想在mapper中加上注解可以使用@Component("xxx"),在ServiceImpl也可直接使用@resource(name="xxx")按照名称来装配,这样也能解决两个同时实现一个dao接口的mapper不会报错

0 回复 有任何疑惑可以回复我~
  • 提问者 慕先生0304801 #1
    非常感谢,但是mapper是xml文件,这个要怎么加注解呢?
    回复 有任何疑惑可以回复我~ 2017-12-05 08:42:48
  • Geely 回复 提问者 慕先生0304801 #2
    xml不用加文件 ,在application-datasource里面会扫描到这个xml,自动加载。
    回复 有任何疑惑可以回复我~ 2017-12-05 09:44:48
  • 提问者 慕先生0304801 回复 Geely #3
    非常感谢,老师,现在不太明白,扫描xxxMapper.xml自动加载后产生的bean name究竟是个什么,是根据xxxMapper.xml文件的文件名产生的bean name还是其他什么呢?
    回复 有任何疑惑可以回复我~ 2017-12-05 10:48:53
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信