首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫

J2EE 整合 MySQL 完整配置指南

     編輯:MySQL 資料庫相關知識

在學習 J2EE 與 EJB 開發時,許多開發者因機器資源有限,無法運行預設的 Cloudscape 或龐大的 Oracle,此時輕量級的 MySQL 成為最佳替代方案。本文記錄 J2EE 1.2.1 整合 MySQL 3.23.23 的完整配置過程與避坑經驗。

關鍵版本需求

重要提醒: J2EE 要求 MySQL 版本至少為 3.23.15 以上。常見的 MySQL-shareware-3.22.30-win 版本無法滿足需求,這是笔者花費半天才發現的教訓。

執行環境

  • 作業系統:Windows NT 4.0
  • J2EE:Java 2 SDK, Enterprise Edition 1.2.1
  • JDK:j2sdk 1.3.0
  • MySQL:MySQL-3.23.23-beta-win
  • JDBC 驅動:mm.MySQL-2.0.2

J2EE 配置檔設定

修改 J2EE 的 default.properties 檔案,新增以下兩行:

jdbc.drivers=org.gjt.mm.mysql.Driver
jdbc.datasources=jdbc/TestDb|jdbc:mysql://localhost:3306/test?user=jian&password=jian
  • jdbc.drivers:指定 JDBC 驅動類別名稱。
  • jdbc.datasources:格式為 JNDI名稱|JDBC_URL。其中 jdbc/TestDb 即為 JNDI 查找時使用的名稱。

EJB 中使用 DataSource

配置完成後,在 EJB 中即可透過 JNDI 取得連線:

Context ic = new InitialContext();
DataSource ds = (DataSource) ic.lookup("jdbc/TestDb");
Connection conn = ds.getConnection();
// 執行資料庫操作...

常見問題與解決方案

1. 「無效的 Windows NT 映像」警告

使用 J2EE 組裝工具產生的 JAR 檔雖可正常運行,但常彈出此警告。屬於工具本身的已知問題,不影響功能,可暫時忽略。

2. 錯誤日誌顯示 "Cannot find principal mapping information..."

即使程式正常運行,error.log 和 DOS 視窗仍會記錄此錯誤。經測試,這不影響實際資料庫連線操作,屬於 J2EE 早期版本的日誌誤報,可不予理會。

3. 根用戶啟動安全性

MySQL 3.23.15 後預設禁止 root 用戶啟動服務。若必須使用 root,需加入參數:./safe_mysqld --user=root &。但強烈建議建立專用 MySQL 用戶啟動服務,避免 LOAD DATA INFILE 等指令賦予資料庫用戶系統 root 權限造成安全風險。

總結

配置正確後回顧過程其實很簡單,但前期摸索極其耗時。J2EE 作為新生技術,錯誤提示機制不夠完善,穩定性有待加強,但只要核心功能運行正常,日誌錯誤可暫時忽略。希望本文能為後人節省寶貴時間。

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