您的位置:首页 > 编程语言 > Java开发

Spring构造函数注入,无法注入的问题

2017-12-14 10:28 197 查看
手动配置bean主要与web中的一个配置目录相关
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>
classpath:spring-mybatis.xml
</param-value>
</context-param>
上面配置的作用是:<!-- 指定Spring Bean的配置文件所在目录。默认配置在WEB-INF目录下 -->
<param-value>的内容可以是1个,也可以是多个,中间用逗号隔开

之所以自己在spring-mvc.xml中配置bean一直无法正常注入,就是因为这里的
<param-value>中没有spring-mvc.xml,自己尝试在spring-mybatis.xml中配置,可正常注入,因此就翻看web.xml的配置。
尝试修改SpringMVC的开启顺序,<load-on-startup>1</load-on-startup>,将1改为0,还是不行。
然后尝试,将spring-mvc.xml也加入到contextConfigLocation配置中,就可以正常注入了。
如下
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>
classpath:spring-mybatis.xml, classpath:spring-mvc.xml
</param-value>
</context-param>

报错信息如下:
ERROR] [org.springframework.web.context.ContextLoader] Context initialization failed

org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'taskJob': Injection of resource dependencies failed; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean found for dependency
[pubinfo.controller.TestCons]: expected at least 1 bean which qualifies as autowire candidate. Dependency annotations: {@javax.annotation.Resource(mappedName=, shareable=true, description=, name=, type=class java.lang.Object, authenticationType=CONTAINER,
lookup=)}

参考资料:https://www.cnblogs.com/superjt/p/3309255.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐