首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> Java 程式設計 >> Java 相關知識

Hibernate 數據庫連接配置實戰:MyEclipse 逆向工程、驅動包陷阱與多庫遷移

     編輯:Java 相關知識

記錄一次從 SQL Server 2000 遷移至 MySQL 的 Hibernate 配置實戰:MyEclipse DB Browser 配置連接成功但運行報錯,根因在於 hibernate.cfg.xml 未自動更新、MySQL 驅動 JAR 未複製到 WEB-INF/lib。文中詳述逆向工程生成 DAO/Model/.hbm.xml 全流程、主鍵策略選擇、Ajax 調用 Servlet 驗證。

遷移關鍵步驟

  1. 刪除舊 SQL Server 驅動 JAR(3 個)。
  2. DB Browser → Edit Connection → 選擇 MySQL 驅動、輸入 URL/用戶/密碼、測試連接成功。
  3. 關鍵:手動將 MySQL 驅動 JAR (mysql-connector-java-x.x.x.jar) 複製到 WebRoot/WEB-INF/lib,刷新項目。
  4. 關鍵:手動修改 hibernate.cfg.xml 中的 dialect、driver_class、connection.url、username、password 為 MySQL 配置。
  5. Hibernate Reverse Engineering 重新勾選表生成 Model/DAO/.hbm.xml,主鍵策略選 assigned(業務主鍵)或 native(自增)。
  6. Servlet 調用 DAO 測試,Ajax 前端驗證。

常見坑總結

  • DB Browser 連接成功 ≠ 運行時類路徑有驅動 JAR。
  • MyEclipse 不會自動同步 hibernate.cfg.xml,必須手動編輯。
  • 異常 Error Creating SessionFactory 多因方言/驅動/URL 不匹配。
  • 控制台輸出 System.out.println 定位 DAO 層調用斷點極其有效。

Hibernate vs ADO.NET 簡評

  • Hibernate:XML/註解映射、逆向工程自動生成 DAO、Session 管理、延遲加載、二級緩存,適合複雜領域模型。
  • ADO.NET:SqlHelper 手寫 SQL/存儲過程、DataReader/DataSet、輕量直接,適合表驅動、性能敏感場景。
  • 核心差異:Hibernate 重「對象圖持久化」,ADO.NET 重「數據集操作」。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved