1. 程式人生 > >spring-springmvc-mybatis中路徑的報錯

spring-springmvc-mybatis中路徑的報錯

BeanFactory not initialized or already closed - call 'refresh' before accessing beans via the ApplicationContext

路徑配置問題:maven路徑和傳統開發路徑的不同

一開始的路徑配置

<!-- 載入spring的各種配置檔案 -->
  <context-param>
  <param-name>contextConfigLocation</param-name>
  <param-value>spring/applicationContext-*.xml</param-value>
  </context-param>

改正後的路徑

<!-- 載入spring的各種配置檔案 -->
  <context-param>
  <param-name>contextConfigLocation</param-name>
  <param-value>classpath:spring/applicationContext-*.xml</param-value>
  </context-param>

原因:傳統方式下會去classes下去尋找配置中的檔案,但在maven中要新增classpath:加以指認。

順便提一下:

classpath:只會到你的class路徑中查詢找檔案。

classpath*:不僅包含class路徑,還包括jar檔案中(class路徑)進行查詢。

注意: 用classpath*:需要遍歷所有的classpath,所以載入速度是很慢的;因此,在規劃的時候,應該儘可能規劃好資原始檔所在的路徑,儘量避免使用classpath*。