明輝手游網(wǎng)中心:是一個免費(fèi)提供流行視頻軟件教程、在線學(xué)習(xí)分享的學(xué)習(xí)平臺!

Sorry,我剛找到的:設(shè)置J2EE支持Mysql (轉(zhuǎn))

[摘要]這一段時間在學(xué)習(xí)J2EE&EJB,我最感興趣的還是做JDBC的EJB,但是由于我手頭上沒有J2EE默認(rèn)的Cloudscape,也不敢裝Oracle,我的機(jī)器太次,跑J2EE已是滿負(fù)荷運(yùn)轉(zhuǎn),絕不能再加大家伙!因此我想繼續(xù)使用小巧玲瓏的Mysql。 首先當(dāng)然是系統(tǒng)環(huán)境軟件的安裝,我就不多說了,在下面我...
這一段時間在學(xué)習(xí)J2EE&EJB,我最感興趣的還是做JDBC的EJB,但是由于我手頭上沒有J2EE默認(rèn)的Cloudscape,也不敢裝Oracle,我的機(jī)器太次,跑J2EE已是滿負(fù)荷運(yùn)轉(zhuǎn),絕不能再加大家伙!因此我想繼續(xù)使用小巧玲瓏的Mysql。

首先當(dāng)然是系統(tǒng)環(huán)境軟件的安裝,我就不多說了,在下面我給出了幾種軟件的下載地址。需要特別強(qiáng)調(diào)的是,請一定要注意你安裝的Mysql的版本,我們平常用的大都是“mysql-shareware-3.22.30-win”這個版本,但J2EE需要3.23.15以上的Mysql,這個是我花費(fèi)大半天時間得到的教訓(xùn)。

經(jīng)我的多次實(shí)驗(yàn),J2EE的配置文件default properties中應(yīng)按如下設(shè)置:
jdbc.drivers=org.gjt.mm.mysql.Driver
jdbc.datasources=jdbc/TestDb jdbc:mysql://localhost:3306/test?user=jian&password=jian
以上語句很簡單,用過Mysql的jdbc driver的人一看就明,所要注意的是其中的“jdbc/TestDb”實(shí)際上就是JNDI用來標(biāo)識該數(shù)據(jù)庫的名字。

在EJB中調(diào)用就很簡單了:
DataSource ds = (DataSource) ic.lookup("jdbc/TestDb");

其實(shí)配置正確后回過頭來再看,覺得真是很簡單,但正是正確之前的一段摸索歷程耗費(fèi)了我很多的精力,所謂黎明前的黑暗吧。
從我使用的情況來看,這個版本的J2EE的錯誤提示機(jī)制特差,看上去不知所云,而且并不穩(wěn)定,比如用它的裝配工具生成的JAR包,雖然可用,但每次總被系統(tǒng)彈出窗口警告說是“無效的Windows NT映像”,弄得煩不勝煩,還有,明明按我上述配置已經(jīng)能順利運(yùn)行連接Mysql的EJB,但error.log和dos窗口總是會記載說“Cannot find principal mapping information for data source with JNDI name jdbc/TestDb”。不過雖然有警告和錯誤日志記載,但只要你程序能夠順利地運(yùn)行,盡可不去理會那么多,畢竟,J2EE還只是一個新生事物,沒有經(jīng)過長時間廣范圍的評測和使用。

由于本人水平有限,謬誤之處煩勞予以糾正。

運(yùn)行環(huán)境
Platform: Winnt 4.0
J2EE: JavaTM 2 SDK, Enterprise Edition Version 1.2.1
JDK: j2sdk1.3.0
Mysql: mysql-3.23.23-beta-win
Driver: mm.mysql-2.0.2