场景描述:系统启动没有任何错误,但是单独访问controller就会报错,原因是做了service注入。贴两张图
1.分析: 找不到bean的原因就是service注解没有被扫描到spring中生成bean
2.尝试:手动将service在spring的文件中进行配置,启动正常,访问也正常,更证明了第一点的分析结果。
3.查资料,大致查询了很多spring+springmvc+hibernate的框架搭建,核对我的配置(粗心),jar包等,其实都没错,贴一些我觉得写得比较明白清楚的博客地址大家可以参考,重复写相同的东西价值不大。
这个是注解扫描冲突的说明:https://blog.youkuaiyun.com/xiaobao5214/article/details/52042041;
这个是ssh整合的例子:http://www.cnblogs.com/xuezhajun/p/7687230.html;
4.继续查询资料:我在开源中国查到一篇文章,和我的情况比较类似,但是楼主没有说明具体的解决情况,只是说了一句是配置文件问题,我想我的配置文件都能正常启动,理论上不应该存在问题才对,无奈下,再次返回检查配置文件,由于springmvc的扫描是生效了的,所以我就检查我的spring-context.xml文件, 两个文件都是最简单的配置,所以没贴,最后贴一下我报错的地方;
5.反思一下,还是个人太粗心,spring框架已经最新到5版本了,所以不存在说配置无法扫描的情况,出现问题就应该是文件没对,各位共勉!