問題描述:
一個ssm項目,spring 整合 spring mvc,項目啟動后頁面報如下錯誤:
在這里插入圖片描述
根本原因:
1、org.springframework.beans.factory.BeanDefinitionStoreException: IOException parsing XML document from class path resource [SpringMvc.xml]; nested exception is java.io.FileNotFoundException: class path resource [SpringMvc.xml] cannot be opened because it does not exist
2、java.io.FileNotFoundException: class path resource [SpringMvc.xml] cannot be opened because it does not exist
找不到SpringMvc.xml,在下面web.xml中是我引用路徑,網上找到問題classpath指向路徑不是resource路徑,所以一直找不到我的xml文件
<!-- springmvc前端控制器 -->
<servlet>
<servlet-name>springMvc</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:SpringMvc.xml</param-value>
</init-param>
<!-- 在tomcat啟動的時候就加載這個servlet -->
<load-on-startup>1</load-on-startup>
</servlet>
解決方法:
classpath:
到你的class路徑中查找文件;
classpath*:
不僅包含class的路徑,還包括jar文件中(class路徑)進行查找
> 解決辦法:在classpath后面在上“*” 可解決問題,“classpath*:SpringMvc.xml”
<!-- springmvc前端控制器 -->
<servlet>
<servlet-name>springMvc</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath*:SpringMvc.xml</param-value>
</init-param>
<!-- 在tomcat啟動的時候就加載這個servlet -->
<load-on-startup>1</load-on-startup>
</servlet>