当前位置:   article > 正文

整合ssm时controller层扫描不到service层的bean_ssm扫描不到controller

ssm扫描不到controller

写程序一直发现这么一个问题:

 翻遍了csdn没有找到怎么回事,感觉该配置的都配置了,然后看到spring配置文件里有

 翻译过来就是没有为该文件配置应用上下文,点后面的配置,问题解决了

后面想把spring配置文件设置为java文件,发现idea下面有一个spring的选项

 点击spring选项

 双击项目名称可以看见整个项目的spring配置

 点击加号将spring配置放进来就好了

但是没配置运行是正常的,所以一直都没点后面的配置,就是不能使用自动注入

盲猜能正常运行是因为在代码中使用spring配置文件时加了路径,运行后能根据这些路径找配置文件,但是spring配置文件和springmvc文件没有整合成一起。

记录一下这个问题,虽然很小,但是希望不要有谁遇到这个问题和我一样浪费大把时间来查,浪费时间。。。


后面接着运行,发现还是无法注入,虽然在软件中是可以注入了,但是运行以后还是注入失败,报错如下

 service层还是无法注入,后面经过查阅资料,发现spring加载要在web.xml文件中配置,我一直跟着视频学习,自己编写了一个监听器,发现这样没有成功载入配置文件,默认的载入配置文件为

  1. <!--说明配置文件的位置-->
  2. <context-param>
  3. <param-name>contextConfigLocation</param-name>
  4. <param-value>classpath:applicationContext.xml</param-value>
  5. </context-param>
  6. <!--默认的监听器-->
  7. <listener>
  8. <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
  9. </listener>

后来想用注解开发,不想要xml文件,查阅资料以后找到

  1. <!--通过指定context参数,让Spring使用AnnotationConfigWebApplicationContext启动容器而非XmlWebApplicationContext
  2. 默认没配置时是使用XmlWebApplicationContext-->
  3. <context-param>
  4. <param-name>contextClass</param-name>
  5. <param-value>
  6. org.springframework.web.context.support.AnnotationConfigWebApplicationContext
  7. </param-value>
  8. </context-param>
  9. <!--指定标注了@Configuration的类,多个可以用逗号分隔-->
  10. <context-param>
  11. <param-name>contextConfigLocation</param-name>
  12. <param-value>com.librarysystem.config.springConfig</param-value>
  13. </context-param>
  14. <!--配置监听器-->
  15. <!--监听器将根据上面的配置使用AnnotationConfigWebApplicationContext根据contextConfigLocation指定的配置类启动Spring容器-->
  16. <listener>
  17. <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
  18. </listener>

问题得到解决,至于为什么自己写的监听器不起效果,查看默认监听器发现

 继承了ContextLoader类,并且通过

this.initWebApplicationContext(event.getServletContext());初始化了配置文件

可编写一个监听器继承这个类调用这个方法

 发现成功运行,自定义监听器加载配置文件成功

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/AllinToyou/article/detail/224759
推荐阅读
相关标签
  

闽ICP备14008679号