Net.Data 會支援具有 Java 語言環境的舊有 Java 應用程式。 透過 Java applet 及 Java 方法 (或應用程式) 的支援, 您可以透過 Java Database Connectivity (JDBC**) API 來存取 DB2。
關於 JDBC 的詳細資訊可從這些網站取得;
http://www.ibm.com/software/data/db2/java/
http://splash.javasoft.com/jdbc/
若要使用 Java 語言環境,您需要驗證 Net.Data 起始設定的設定值, 並設置語言環境。
請驗證下列架構陳述式是否在起始設定檔案中,且位在同一行上:
ENVIRONMENT (DTW_JAVAPPS) ( OUT RETURN_CODE ) CLIETTE "DTW_JAVAPPS"
請參閱環境架構陳述式,以瞭解 Net.Data 起始設定檔案及語言環境 ENVIRONMENT 陳述式。
重要事項:請參閱設置 Java 語言環境, 以學習如何設置 Java 語言環境。
Java 語言環境提供類似於「遠端程序呼叫 (RPC)」的介面。 您可以從 Net.Data 巨集,以 Net.Data 字串作為參數, 來發出 Java 函數呼叫,且您呼叫的 Java 函數可以傳回字串。 當您使用 Java 語言環境時,您必須使用 Net.Data「現場連線」 (請參閱管理連線,以取得「現場連線」的詳細資訊)。
若要呼叫 Java 函數:
每次您引進新的 Java 函數時,您必須重新建立 Java cliette。
修改 Java 函數範例檔案 UserFunctions.java,或以下列名為 myfile.java 的範例檔為模型,來建立新的檔案:
====================myfile.java==================== import mypackage.* public String myfctcall(...parameters from macro...) { return ( mypackage.mymethod(...parameters...)); } public String lowlevelcall(...parameters...) { string result; .......code using many functions of your package... return(result) }
在安裝 Net.Data 期間,Net.Data 會建立數個目錄。 這些目錄包括透過 Java 語言環境建立 Java 函數、定義 cliette 及執行巨集時所需的檔案:
表 12 描述您作業系統上的檔案的目錄及檔名。
作業系統 | 檔名 | 目錄 |
---|---|---|
OS/2 | UserFunctions.java | javaapps |
launchjv.com | connect | |
Windows NT | UserFunctions.java | javaclas |
makeClas.bat | javaclas | |
launchjv.bat | connect | |
UNIX | UserFunctions.java | javaapps |
launchjv | javaapps |
修改範例檔 makeClas.bat,或建立新的 .bat 檔, 對所有 Java 函數建立名為 dtw_samp.class 的 Net.Data cliette 類別。 下列範例顯示批次檔 CreateServer 如何處理三個 Java 函數:
rem Batch file to create dtw_samp for Net.Data java CreateServer dtw_samp.java UserFunctions.java myfile.java javac dtw_samp.java
批次檔會處理下列檔案,以及 Net.Data 提供、名為 Stub.java 的 stub 檔, 來建立 dtw_samp.class。
撰寫 JDBC 應用程式或 applet 非常類似於使用 DB2 CLI 或 ODBC 撰寫 C 應用程式, 來存取資料庫。應用程式與 applet 之間的主要差異性在於應用程式可能需要特殊軟體, 方可與 DB2 通信,例如,「DB2 從屬站應用程式啟用器」。 applet 依賴可使用 Java 的 Web 瀏覽器,且不需要在從屬站上安裝任何 DB2 程式碼。
在使用 JDBC 之前,您的系統需要某些架構。這些注意事項會在 「DB2 JDBC 應用程式及 Applet 支援」網站中加以討論:
http://www.ibm.com/software/data/db2/jdbc/db2java.html
在您建立了 Java 函數、定義了 cliette 類別,以及架構了 Net.Data 後, 您可以執行含有 Java 函數參照的巨集。重要事項: 在呼叫 Net.Data 巨集之前,請先啟動「連線管理程式」。
在下列範例中,函數呼叫 myfctcall 會使用 cliette DTW_JAVAPPS 呼叫 Net.Data 提供的範例函數。
%FUNCTION (DTW_JAVAPPS) myfctcall( ....parameters from macro ....) %{ to call the sample provided with Net.Data %} %FUNCTION (DTW_JAVAPPS) reverse_line(str); %HTML(report){ you should see the string "Hello World" in reverse. @reverse_line("Hello World") You should have the result of your function call. @myfctcall( ... ....) %}