便攜的J2EE應用 (轉)

amyz發表於2007-08-16
便攜的J2EE應用 (轉)[@more@]

便攜的應用

作者:羅時飛:namespace prefix = o ns = "urn:schemas--com::office" />

E_: .com.cn">j2eebeans@yahoo.com.cn

(版權個人所有,引用指明出處,不要用於商業目的,寫於年09月29日,順祝大家國慶節愉快)

關鍵詞:J2EE    便攜

成功開發一個J2EE應用後,如果需要釋出到J2EE應用,在一般情況下,我們需要這樣做:第一,(有些時候不需要單獨安裝,比如sphere、;但有些時候需要安裝,比如JBoss);第二,安裝應用伺服器(比如,WebSphere、WebLogic);第三,安裝MS(比如,、、 SERVER);第四,與待發布的J2EE應用相關的DBMS內容(比如,SQL指令碼的安裝、初始化);第五,透過應用伺服器提供的部署工具(其中,包括應用整合工具、基於Web的部署、命令列方式)手工完成J2EE應用的釋出。

大家是否看到,要讓我們看到J2EE應用能夠執行起來步驟很多,而且很煩瑣。如果是用於實際應用,那麼這些步驟是不可避免的,比如產品需要上線;但如果只是公司的產品宣傳、為市場人員提供產品(本文的產品特指,J2EE應用)的功能、業務流程實現,且具有可操作性,採用這樣一種方式是否顯得有些多餘。既然多餘,難道是否有其他的好辦法來簡化這幾個過程?

當然,最終的J2EE應用Deploy到具體的應用伺服器型別的種類在很大程度上藉助於開發工具能夠實現。比如,JBuilder能夠實現業界主流的J2EE應用伺服器整合(JBuilder本身的還是蠻多的);WebSphere Studio所支援的J2EE應用伺服器有限,但藉助於同樣能夠實現這種便攜性(IBM開發工具的易用性往往受到很多開發者的抨擊,但有一點WebSphere Studio是一款不錯的產品);其他的工具,比如支援Eclipse的JBoss(作者將有這方面的文章具體介紹JBossIDE),也不少。

本人就試探回答這樣一個問題,使得J2EE應用具有真正的便攜性。

一,  實現思路

JBoss,作為一款J2EE應用伺服器,其在業界的口碑相當不錯。其本身基本不需要怎麼安裝(純綠色)。同時,其內建了一個純的DBMS,即Hsqldb資料庫系統。所以,大家細想,如果採用Hsqldb作為J2EE應用的DBMS、JBoss作為應用伺服器,我們將簡化很多J2EE應用的實現步驟。但是有一點希望大家不要忽視,即JDK是否還需要單獨安裝。答案是,不需要,我們可以把JDK整合到JBoss裡面。

本人參與的某專案,採用基於的架構,主要的架構方法為主流的,“表示層+業務+Session Facade(封裝了Entity Beans和部分運算元據庫)”,方法。開發工具採用WebSphere Studio Application Developer 5.1,成功開發後能夠直接支援WebSphere Application Server;經過簡單的移植工作,也實現了基於JBoss的執行方式。另外,由於這兩套產品可以幾乎同時完成,從市場、產品策略角度考慮,我們可以加快產品的開發週期、上市時間,提高生產率,為贏得市場奠定良好的基礎。

好了,具體的步驟讓我慢慢講來。

二,  JDK的整合

可能大家在這個過程,往往都會在目標機器上單獨安裝JDK,並配置好環境變數(比如,classpath、path、JAVA_HOME)。

其實,JBoss本身簡化了這種方式,即獲取JDK。考慮到J2EE 1.3應用的規範性,筆者採用了JDK 1.3.1_09(比如,WebSphere Application 5.0不支援JDK 1.4)。所以,我們可以將安裝完後的JDK 1.3.1_09複製一份到JBoss目錄下(筆者採用的是JBoss 3.2.1 with 4.1.24)。如果JBoss安裝在,C:jboss-3.2.1_tomcat-4.1.24,那麼JDK 1.3.1_09將位於C:jboss-3.2.1_tomcat-4.1.24jdk1.3.1_09。

其次,開啟C:jboss-3.2.1_tomcat-4.1.24in un.bat,並加入如下一句設定JAVA_HOME的語句(注意,一定要加在[if not "%JAVA_HOME%" == "" goto ADD_TOOLS]之前)。

:FOUND_RUN_JAR

set JAVA_HOME=..jdk1.3.1_09

if not "%JAVA_HOME%" == "" goto ADD_TOOLS

set JAVA=java

好了,經過整合JDK的JBoss現在可以在沒有單獨安裝JDK的機器上很完美的執行。

三,  Hsqldb的相關配置

Hsqldb(forge/"> )的預設配置其實JBoss已經完成了。細心的讀者,會發現位於C:jboss-3.2.1_tomcat-4.1.24serverdefaultdeploy下有一個hsqldb-ds.xml檔案。開啟後,可以發現其提供了相關內容。因此,為生成J2EE應用所需的資料庫和初始化資料自然可以透過JDBC Client工具(比如,Borland Database Pilot)完成。

該DBMS的具體內容,可以參考上文給出的URL。

四,  J2EE應用的部署

  完成上述配置後,我們可以將自己開發完成的J2EE應用部署到JBoss。

五,  結論

透過上述過程,我們將所有J2EE應用所需要的內容(包括JDK、DBMS、J2EE Application Server、J2EE應用),都整合起來。基於此,我們可以藉助於安裝製作軟體(比如,InstallAnywhere、InstallShield)以產品的形式實現J2EE真正的便攜性!

由於作者才識有限,不對之處還望批評指正!也歡迎給作者來信,切磋!

謝謝,您的閱讀。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10752019/viewspace-962674/,如需轉載,請註明出處,否則將追究法律責任。

相關文章