首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計綜合問答

SSH2 專案找不到 hibernate.cfg.xml 與 applicationContext.xml 解決方案

     編輯:程式設計綜合問答

問題現象

在採用 Struts2 + Spring + Hibernate (SSH2) 且使用註解開發的專案中,啟動時拋出找不到 hibernate.cfg.xml 與 applicationContext.xml 的異常。即使 web.xml 已配置 ContextLoaderListener 指向 classpath:/config/spring/*.xml,問題依舊存在。

根本原因

  • applicationContext.xml 遺失或路徑錯誤:Spring 容器啟動時無法載入上下文配置。
  • Hibernate 配置未整合至 Spring:傳統 hibernate.cfg.xml 應併入 applicationContext.xml 中,由 LocalSessionFactoryBean 管理。

解決步驟

  1. 確認 src/config/spring 目錄下存在 applicationContext.xml。
  2. 將原 hibernate.cfg.xml 中的資料源、映射等配置遷移至 applicationContext.xml 的 sessionFactory Bean 定義中。
  3. 移除專案中的 hibernate.cfg.xml,避免雙重配置衝突。
  4. 檢查 web.xml 中 contextConfigLocation 路徑是否與實際檔案位置一致。

最佳實踐建議

採用純註解配置時,建議完全捨棄 .cfg.xml,改用 Spring 的 @Configuration + @Bean 方式定義 SessionFactory,實現零 XML 配置。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved