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

j2ee doc 翻譯系列之二

[摘要]聲明:本文檔由freehero翻譯,未經(jīng)作者同意不能用于商業(yè)用途,您可以自由的復(fù)制和傳播,文檔只供您理解j2ee,因作者能力有限,建議您同時閱讀英文文檔,對于因為翻譯的錯誤代來的后果作者不負任何責任...
聲明:本文檔由freehero翻譯,未經(jīng)作者同意不能用于商業(yè)用途,您可以自由的復(fù)制和傳播,文檔只供您理解j2ee,因作者能力有限,建議您同時閱讀英文文檔,對于因為翻譯的錯誤代來的后果作者不負任何責任,歡迎您來信討論freehero@163.net 

JavaTM 2 SDK,Enterprise Edition 介紹

1。注意事項
如果你第一次使用JavaTM 2 SDK, Enterprise Edition (J2EE SDK) ,你應(yīng)該遵從下面的步驟:
1。確認你安裝了JavaTM 2 SDK, Enterprise Edition (J2EE SDK) 。
2。配置你的JavaTM 2 SDK, Enterprise Edition (J2EE SDK) 軟件。
3。閱讀《開始j2ee》文檔,開始建立年的ejb。
2。支持的平臺
 SolarisTM Operating Environment, version 2.6
 Windows NT, version 4.0
3。支持的數(shù)據(jù)庫和jdbc 驅(qū)動
這個版本支持jdbc api的1.0和2.0版本的數(shù)據(jù)庫驅(qū)動。我們在以下數(shù)據(jù)庫上做了很好的測試:
Oracle8 Server, version 8.05
Microsoft SQL Server, versions 6.5, 7.0
Cloudscape, version 3.0
更多的jdbc信息,請參閱jdbc data access api web頁面(

"http://www.java.sun.com/products/jdbc/index.html)。觀看驅(qū)動提供商列表請看

http://www.java.sun.com/products/jdbc/jdbc.driver.html。當你安裝完驅(qū)動后,你要按照《配置指南》中

有關(guān)jdbc 驅(qū)動的內(nèi)容進行配置。如果你使用cloudscape 數(shù)據(jù)庫,你不需要配置它的驅(qū)動,因為在本版本已經(jīng)

包括了它的驅(qū)動。

4。本版本的內(nèi)容包括:
服務(wù):
EJB
HTTP
HTTP over SSL
COS naming
Authentication

工具:
Application Deployment Tool
一個打包j2ee組件和發(fā)布應(yīng)用程序的工具。
Realm Tool
這個工具管理j2eeserver 的用戶。
Verifier
這個工具核實j2ee組件文件。
Packager
這個工具打包j2ee組件。
Cleanup Script
刪除所有發(fā)布的j2ee的應(yīng)用程序。

Cloudscape 數(shù)據(jù)庫
本版本包括一個用java語言寫的關(guān)系型數(shù)據(jù)庫——cloudscape 3.0。盡管本文檔例子的代碼是用

cloudscape做測試的,但是你可以使用任何本版本支持的數(shù)據(jù)庫。

對企業(yè)的java apis
Enterprise JavaBeans API, version 1.1
Java Servlets, version 2.2
JavaServer Pages technology, version 1.1
JDBC Standard Extension, version 2.0
Java Naming and Directory InterfaceTM API, version 1.2 (CosNaming SPI)
RMI/IIOP
Java Transaction API, version 1.0
JavaMail API, version 1.1
Java Messaging Service, version 1.0 (API only, no implementation)

5。需要的軟件。
首先,你需要安裝JDK 1.2 。The JavaTM 2 SDK, Standard Edition 提供了運行和建立j2ee應(yīng)用程序的

能力。如果你的client在另外一個機器上,client上也必須安裝jdk1.2。
能支持j2ee的jdk1.2如下:
http://www.java.sun.com/products/jdk/1.2/download-solaris.htm
http://www.sun.com/solaris/java
ttp://www.java.sun.com/products/jdk/1.2/download-windows.html
其他版本的jdk1.2沒有做過測試,并且不支持j2ee。
注意:jdk1.2中不能安裝 The RMI-IIOP standard extension 。

6。當前的缺陷。
本版本的目的是向你介紹j2ee技術(shù),給你提供一個向我們反饋信息的機會,以便我們以后做的更好。本版

本中有幾個缺陷。
1。Container-Managed Persistence
實現(xiàn)基于container-managed persistence 的entity beans不能完全實現(xiàn)所有的把物體影射到關(guān)系型數(shù)
據(jù)庫的特性。

entity bean 類只能影射到一個數(shù)據(jù)庫中的表
一個container-managed field 只能影射到一個表中的字段
當容器裝入container-managed fields 的時候,它回裝入所有的container-managed fields 。當裝入的

數(shù)據(jù)非常大的時候,性能回受到影響。因為有些數(shù)據(jù)是商業(yè)方法所不需要的。
如果多個entity beans 的container-managed fields影射到數(shù)據(jù)庫中同一個數(shù)據(jù)的時候,并且如果這些

beans在同一個事務(wù)中被引用,他們可能會對數(shù)據(jù)的一致性造成影響。
在ejbCreate, ejbRemove, ejbLoad, and ejbStore 方法中包含sql語句的beans中,當用deploytool分布

它們的時候,你只能修改表和字段的名字,不能修改作為參數(shù)傳入的數(shù)目和它們的順序。
在sql 語句中不能調(diào)用存儲過程。
在Create Table語句中,你可以更改表的字段的sql類型,以便和實際的數(shù)據(jù)類型相符。
所有發(fā)生起來語句中的表名和字段的名字必須一致。
通常的sql語句只在Cloudscape, Oracle, and Microsoft SQL Server上做了測試,其他的數(shù)據(jù)庫你應(yīng)該

自己測試。

重復(fù)進行Result Set 時進行數(shù)據(jù)庫調(diào)用
對于一些數(shù)據(jù)庫的驅(qū)動而言,在重復(fù)進行Result Set 時不能連接數(shù)據(jù)庫。在下面的例子中,the 

stmt.executeUpdate 會失敗。
String query = "SELECT DEPTNO FROM DEPT . . .";
String update = "UPDATE EMPLOYEE . . .";
ResultSet rs = stmt.executeQuery(query);
while (rs.next()) {
 String s = rs.getString("DEPTNO");
 // The following statement will FAIL:
 stmt.executeUpdate(update);
. . .
}
你可以通過以下幾種方法繞開此限制:
1。使用一個包含次sql的存儲過程。
2。把重復(fù)的語句定義成一個子查詢,例如:
 String update = "UPDATE EMPLOYEE
 SET DEPTNO =
 (SELECT DEPTNO FROM DEPT
 WHERE LOC = `ATLANTA')
 WHERE TITLE = `ENGINEER'";
3。把第二個sql語句放在另外一個方法中,然后調(diào)用另外一個方法,在這種情況下,必須注意另外一個的

方法事RequiresNew類型的事務(wù)。同時一應(yīng)該注意第二個sql語句運行在另外的事務(wù)中。這樣,如果第二個事物

失敗的話,你應(yīng)該使第一個事物
回滾。

強壯性和內(nèi)存問題
我們預(yù)期在j2ee的server運行在內(nèi)存小于128m的系統(tǒng)中,或者deploy的j2ee應(yīng)用程序數(shù)目大于16的時候,

或者幾千個jeb實例化的時候,系統(tǒng)會出現(xiàn)問題。如果你的內(nèi)存溢出,shutdown并且重新啟動j2ee server。

通常的分布環(huán)境
在這個版本中,每一個develper應(yīng)該工作在自己的j2ee sdk環(huán)境中。多個developer不能共享一個j2ee

server。

已知的bug
分布的bug
1。在尋找一個 web resource collectin 時鍵入url后應(yīng)該鍵入回車以便確認數(shù)據(jù)已經(jīng)發(fā)送
2。當gui界面中的edit菜單被選中的情況:典型的情況時:樹型結(jié)構(gòu)看起來象是已經(jīng)被選中,實際上另外

一個組件被選中了。因此,edit操作會對另外一個組件進行操作。
3。