程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> JSP編程 >> 關於JSP >> 使用 JSP 集成 Amazon Web Service

使用 JSP 集成 Amazon Web Service

編輯:關於JSP

在本系列文章的 第 1 部分 中,我們介紹了如何使用 Notes/Domino 6 來集成 Amazon Web Service。我 們確信很多讀者很想了解如何使用 J2EE 來創建類似的應用程序,因為 IBM 已經從技術方面做出了很多努力 。因此,在本文中,我們將介紹如何使用 J2EE 來重新創建在第一篇文章中構建的 Notes 應用程序,同時還 將介紹這種技術與 Domino 的不同。本文的目的是為 Domino 開發人員簡要介紹如何可以使用 J2EE 采用一種 不同的方法來開發一個類似的 Amazon Web Service 應用程序。本文假設您是一名非常有經驗的 Java 開發人 員。

首先,我們先來了解一下如何使用 Dreamweaver 和 JSP(JavaServer Page)來創建應用程序;這種技術 被用於最簡單的 Web 應用程序,至於原因,我們會慢慢介紹。然後,我們將介紹如何使用 EJB(Entity JavaBeans)、JavaBeans 和 Struts 來創建應用程序,這種技術通常用於更加健壯、更復雜的 Web 應用程序 。

J2EE 技術和框架

在 J2EE 世界中有很多不同的技術和框架,例如 Cocoon(XML/XSLT)、Structs、ColdFusion MX、Java Server Faces,等等,它們都是在 J2EE 平台上運行的。當然,J2EE 平台允許您在運行 J2EE 的平台上使用 任何一種框架,這就為您提供了一個可以使用多種平台環境的承諾。

Domino 服務器也可以采用混合型的 J2EE/Domino 設計,使用 Domino 表單來顯示用戶界面,使用 Java servlet 來實現對表單的處理。這為表單處理提供了更多的靈活性,並且比純粹的 Domino 應用程序具有更好 的性能,但是很多純粹的 J2EE 開發人員可能會認為這種方式非常奇怪。

另外一種可以選擇的 Domino/J2EE 混合架構將使用一台 J2EE 服務器(通常是 JSP,例如 Tomcat)來顯 示用戶界面,但使用 Domino 數據庫來存儲數據。這可以使用 Domino JSP 定制標簽實現,在 LDD Today 概 述“Jeff Calow on new Web technologies in Domino 6” 中對此進行了討論。另外,這種架構提供了比純 粹的 Domino 應用程序更好的性能,但是大部分開發人員使用它是為了改善控制 Web 站點的圖形化層次結構 的能力,因為 Domino 在自己的 Web 視圖中並沒有提供每個元素的位置。

與使用 Domino 創建的站點相比,這兩種混合技術在性能方面的改善都不是很明顯,但是它們都提供了一 種替代品,替代品需要的工作量比純 J2EE 應用程序更少;而且對於 Domino 開發人員來說,通過這種可選技 術來體驗 J2EE 技術也非常有幫助。我們將在本系列的第三篇文章中介紹使用 Lotus Domino Toolkit for WebSphere Studio 來組合使用 Domino/J2EE 技術的方法,以及如何使用此工具為 Notes 數據庫中保存的 Amazon 書籍數據開發一個 Web UI。

什麼是 J2EE?

J2EE 是一組標准的技術和 API 集,Sun Microsystems 將其定義為一台 J2EE 服務器成為兼容服務器之前 必須具備的一些需求。與 Web 開發前景有關的一些技術是 servlet、JSP、JavaBeans 和 EJB。

對於簡單的 Web 應用程序來說,您可以使用 servlet 和 JSP。servlet 和 JSP 都受到 Apache Jakarta 項目的 Tomcat 引擎的支持。servlet 和 JSP 的效率比 Notes/Domino 代理高,因為它們只有在首次使用時 才需要加載;相比較而言,Java 代理在每次調用時都會重新進行加載,因此它們占用的 CPU 處理時間更多。 從 JSP 版本 1.1 開始,增加了 JSP 定制標簽,您並不需要在其中編寫 JSP 中的代碼邏輯,因此您可以純粹 將 JSP 作為一個表示層。

EJB 通常都是與 J2EE 應用程序相關的。它們提供了一種封裝數據庫訪問和業務邏輯的方法,這樣就可以 在多台服務器上實現分發了。在正確完成處理之後,數據庫訪問被隱藏到了業務邏輯對象之後,因此,那些使 用 JSP 的 Web 站點的開發人員並不知道如何組織數據庫。

J2EE 強大功能的來源之一是它可以將一個層次劃分為多個單獨的服務器。雖然 Domino 可以運行數據庫、 業務和 Web 服務器上的所有表示/UI 層,但 J2EE 可以將這三部分劃分到不同的服務器上。另外,每個部分 都可以使用集群,這樣就可以在層次級別上具有一些冗余。雖然您可以對 Domino 服務器采用集群,但是您並 不能非常精准或深入地進行這種聚集,因此一個精確定義的 J2EE 應用程序天生就比一個類似的 Domino 應用 程序范圍更加廣泛,因為您可以將其擴充到多台機器上。缺點是這種技術的開發成本更高並且更復雜。

使用 RDBMS 數據庫

正如大部分 Domino 開發人員所知道的那樣,將很多個字段放到一個表單中可以定義一個 Domino 數據庫 。這種設計非常簡單(也就是說,表單和視圖的設計並不需要一個正式的設計過程),也可以使用一個正式的 過程進行設計;您可以任意添加字段,尤其是將某些字段從單值更改為多值。字段的大小並不需要提前指定, 不過您必須要知道字段大小的限定值。在創建表單之後,就可以用視圖來簡單地顯示這些字段,其中包括那些 多值字段。

在 RDBMS(關系數據庫管理系統)中,在最初的數據庫設計上您需要更多的努力,因為修改表的結構是非 常痛苦的一件事情,主要是因為所有的外鍵鏈接和字段大小都必須提前聲明。在某些情況中,您還需要刪除表 以及表中的所有數據,修改數據庫的設計,然後重新加載數據。

需要對多值字段進行更深入的討論。您通常會將一個 Domino 文檔映射為 RDBMS 表中的一行數據。Domino 文檔中的每個字段可以映射成為該表中的一列。然而,一個表中的每一列(也就是每個字段)都只能存儲一個 值。在一個 RDBMS 中,您需要單獨創建一個具有兩列的表。一列使用一個外鍵鏈接到表單上(表中的一行) 。另外一列鏈接到另外一個表上,其中列出了這個多值字段所有可能的值。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved