缺省代码:
<listener> <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> </listener>
导致结果:页面500,报错内容
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'employeeController': Injection of autowired dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Could not autowire field: private com.itlc.crud.service.EmployeeService com.itlc.crud.controller.EmployeeController.employeeService; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type [com.itlc.crud.service.EmployeeService] found for dependency: expected at least 1 bean which qualifies as autowire candidate for this dependency. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)}
从:
<context:component-scan base-package="com.itlc.crud.controller" use-default-filters="false"> <context:include-filter type="annotation" expression="org.springframework.stereotype.Controller"/> </context:component-scan>
改为了: <context:component-scan base-package="com.itlc.crud.controller" use-default-filters="false"/>
而由于use-default-filters=”false”的存在并且没有自己定义扫描方法,就什么都扫不到了。于是,不但没改对,反而加大了错误。
导致结果:controller也扫不到了,页面从500直接404,并且仍然没有找到错误原因,疯狂修改其他地方,使得格式板式混乱,继续导致其他错误。
》》》》》》》修改过程:在朋友的帮助下一步一步解决》》》》》》
策略:
1.去掉use-default-filters=”false”
2.恢复到
<context:component-scan base-package="com.itlc.crud.controller" use-default-filters="false"> <context:include-filter type="annotation" expression="org.springframework.stereotype.Controller"/> </context:component-scan>
策略:在web.xml中补全代码:
<listener> <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> </listener>
策略:
1.将mapper的文件移动到resource中,注意同时修改spring配置文件找mapper.xml的对应位置
2.在maven的配置文件中加入
<resources> <!--编译之后包含xml--> <resource> <directory>src/main/java</directory> <includes> <include>**/*.xml</include> </includes> </resource> </resources>
这样xml文件也会被加入到target中了。
总结:工程类文件一定要注意格式,不要什么自己创造新方法,有bug一定要对症下药,不要乱改。格式真的十分重要。
文章来源: ssm框架搭建过程中的bug(石乐志)