背景:
- 1、使用maven分模块构建SSM工程
- 2、没有mybatis映射文件和核心配置文件
- 3、(2)中的配置都在spring配置中
错误信息
文字说明:一直提示userMapper这个接口注入失败。
疑惑: 鄙人的配置跟视频一样,跟上一次项目配置也一样,为什么还报错?
怎么办?
问度娘:
- 1、你web.xml中没有配置监听器加载spring配置文件
【有道理】。不加载spring配置文件,等于没有使用spring,而mybatis靠spring整合,所有mybatis也等于没效果
- 2、你接口没有加@Mapper和@MapperScan注解
【有待审核,因为我没给mapper接口加注解也可以。】
听听看:
mybatis-config中只是会为对应的mapper创建代理类,而想真正包装成bean,注入到spring容器中,还是需要靠AutoConfiguredMapperScannerRegistrar,它会根据扫描@Mapper注释或是@MapperScan指定的包下的接口,将其注册为bean。
- 3、你没有配置接口实现bean
这个是假答案。我spring帮我生成mapper接口的动态代理对象,我还配置个球
但是,这些“低级”错误,我都没犯,我不需要设置context-param全局参数,不需要加@Mapper和@MapperScan注解,也不需要什么配置mybatis映射文件和mybatis核心配置文件(因为我使用注解)。
是因为我犯了这个😭
!!!我给spring配置命名错误了!!!!!
来看看这个dao层的spring配置文件内容是什么:
你看:一、没有spring整合mybatis。二、没有生成mapper接口的动态代理对象
所以,怎么可能注入成功呢?
版权声明:本文为weixin_45097731原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。