J2EE技術(shù)
發(fā)表時(shí)間:2023-08-12 來源:明輝站整理相關(guān)軟件相關(guān)文章人氣:
[摘要]一. J2EE技術(shù) 什麼是Java2 platform,enterprise edition?J2EE是美國Sun公司剛剛推出的一種全新概念的模型,與傳統(tǒng)的互聯(lián)網(wǎng)應(yīng)用程序模型相比有著不可比擬的優(yōu)勢(shì)。...
一. J2EE技術(shù)
什麼是Java2 platform,enterprise edition?
J2EE是美國Sun公司剛剛推出的一種全新概念的模型,與傳統(tǒng)的互聯(lián)網(wǎng)應(yīng)用程序模型相比有著不可比擬的優(yōu)勢(shì)。
當(dāng)今許多企業(yè)都需要擴(kuò)展他們的業(yè)務(wù)范圍,降低自身經(jīng)營成本,縮短他們和客戶之間的響應(yīng)時(shí)間,這就需要存在一種簡捷,快速的服務(wù)于企業(yè),合作伙伴和雇員之間。
典型的說,提供這些服務(wù)的應(yīng)用軟件必須同企業(yè)信息系統(tǒng)(EIS)相結(jié)合,并提供新的能向更為廣闊的用戶提供的服務(wù)。這些服務(wù)要具備以下的特點(diǎn):
a. 高可用性:來滿足現(xiàn)在的全球商業(yè)環(huán)境
b. 安全性:保護(hù)用戶的隱私和企業(yè)數(shù)據(jù)的安全
c. 可依賴性和可擴(kuò)展性:保證商業(yè)交易的正確和迅捷
通常這些服務(wù)是由分布的應(yīng)用程序組成的,包括前端數(shù)據(jù)端和后端數(shù)據(jù)源以及它們之間的一層或幾層,這些中間層提供了把商業(yè)功能和數(shù)據(jù)與EIS相結(jié)合的功能。這些中間層把客戶端從復(fù)雜的商業(yè)邏輯中分離出來,利用成熟的INTERNET技術(shù)使用戶在管理上所花費(fèi)的時(shí)間最小化。
J2EE正式降低了開發(fā)這種中間層服務(wù)的成本和復(fù)雜程度,因而使得服務(wù)可以被快
速的展開,并能夠更輕松的面對(duì)競爭中的壓力。
J2EE通過定義一種標(biāo)準(zhǔn)的結(jié)構(gòu)來實(shí)現(xiàn)它的優(yōu)勢(shì),如下:
a. J2EE Application Programming Model ----一種用于開發(fā)多層次,瘦型客戶用戶程
序的標(biāo)準(zhǔn)設(shè)計(jì)模型
b. J2EE Platform----一個(gè)標(biāo)準(zhǔn)的平臺(tái),用來整合J2EE的應(yīng)用程序,指定一系列的
接口和方法
c. J2EE Compatibility Test Suite----一套兼容測(cè)試組件,用來檢測(cè)產(chǎn)品是否同J2EE 平臺(tái)兼容
d. J2EE Reference Implementation----用來示范J2EE的能力
2.J2EE 應(yīng)用程序模型
J2EE是被設(shè)計(jì)為顧客,雇員,供應(yīng)商,合作者提供企業(yè)級(jí)服務(wù),這樣的應(yīng)用程序天生具有復(fù)雜性,他們要訪問各種類型的數(shù)據(jù)并分發(fā)于大量的客戶端。
為了更好的控制,管理這些應(yīng)用程序,支持各種各樣用戶的商業(yè)功能要在中間層引入,中間層描述了一個(gè)被企業(yè)的信息技術(shù)部門緊緊控制的環(huán)境。
J2EE應(yīng)用程序依靠于EIS層來存儲(chǔ)企業(yè)的商業(yè)數(shù)據(jù)。這些數(shù)據(jù)和用來管理它的系統(tǒng)是企業(yè)中的核心。
最初,雙層結(jié)構(gòu)(client-server)應(yīng)用程序模型許諾將提高伸縮性與更廣闊的功能,但不幸的是,直接向用戶提供EIS服務(wù)的復(fù)雜性和再每臺(tái)用戶計(jì)算機(jī)上安裝和維護(hù)商業(yè)邏輯所引起的管理上的問題成了很大的限制。
而這些再雙層結(jié)構(gòu)中的限制在三層結(jié)構(gòu)中已不存在了。
如今要求既開發(fā)服務(wù)的商業(yè)功能,還要開發(fā)訪問數(shù)據(jù)庫和其他資源的代碼,這是很復(fù)雜的,因?yàn)槊恳环N多層結(jié)構(gòu)的服務(wù)器都有它自己的應(yīng)用模型,因此組建一直富有經(jīng)驗(yàn)的開發(fā)隊(duì)伍將是困難的。另外,隨著服務(wù)規(guī)模的擴(kuò)大,為了降低開支和加快響應(yīng)速度,也要經(jīng)常對(duì)其基層代碼進(jìn)行修改。
J2EE應(yīng)用模型定義了一種建筑模型來讓多層應(yīng)用程序?qū)崿F(xiàn)服務(wù),并消除了以上的問題,提供了可伸縮的,易訪問的,易于管理的方法。
J2EE應(yīng)用模型把實(shí)現(xiàn)多層結(jié)構(gòu)服務(wù)的工作劃分為二部分:
開發(fā)者實(shí)現(xiàn)商業(yè)和表達(dá)邏輯,以及由J2EE平臺(tái)提供的標(biāo)準(zhǔn)的系統(tǒng)服務(wù)。
開發(fā)者可以依賴于這個(gè)平臺(tái)為開發(fā)中間層服務(wù)中遇到的系統(tǒng)級(jí)硬件問題提供
解決方案
J2EE應(yīng)用模型為中間層應(yīng)用程序提供了編譯一次,任意運(yùn)行的特點(diǎn)(write once,run anywhere),這種標(biāo)準(zhǔn)模型最小化了培訓(xùn)開發(fā)人員的費(fèi)用。
J2EE應(yīng)用程序模型通過在建立多層應(yīng)用程序中最小化其復(fù)雜程度,圍簡化和加速應(yīng)用程序的開發(fā)邁出了重要的一步。
3.Java技術(shù)基礎(chǔ)
J2EE應(yīng)用程序模型起始于Java程序語言和Java虛擬機(jī),他們提供的不斷提高的便攜性,安全性和開發(fā)人員能力的提高是應(yīng)用程序模型的基礎(chǔ)。
應(yīng)用程序模型通常包括JavaBean組件模型,JavaBean是的為普通功能編寫基于Java技術(shù)的代碼更加容易,利用JavaBean的開發(fā)工具可以可視的定制,組合這些組件。
4.安全性
當(dāng)其他的應(yīng)用程序模型需要在每個(gè)程序中有特定平臺(tái)的安全性時(shí),J2EE平臺(tái)環(huán)境使在開發(fā)時(shí)安全約束便已定義了。
J2EE平臺(tái)定義了一種標(biāo)準(zhǔn)的公開的存取控制規(guī)則,當(dāng)程序在企業(yè)平臺(tái)上開發(fā)時(shí)就已被程序師定義和解釋了。J2EE也需要提供一個(gè)標(biāo)準(zhǔn)的注冊(cè)機(jī)制以便應(yīng)用程序不用將這些注冊(cè)機(jī)制和邏輯相混合,相同的工作要執(zhí)行于大量的不同的環(huán)境中而并不需要改變?cè)创a。
例如:J2EE應(yīng)用程序開發(fā)人員可以指定幾個(gè)安全級(jí)別(如,user,superuser,administrator),于是他們寫出代碼來檢查當(dāng)前用戶權(quán)限的級(jí)別當(dāng)用戶訪問數(shù)據(jù)時(shí)。在開發(fā)階段,開發(fā)人員賦予多組用戶適當(dāng)?shù)陌踩?jí),使應(yīng)用程序能夠容易的判斷限制級(jí)在執(zhí)行限制操作之前。
5.中間層
J2EE應(yīng)用程序模型的一個(gè)主要優(yōu)點(diǎn)便是在中間層的多層應(yīng)用程序。在J2EE平臺(tái),中間層商業(yè)功能是由企業(yè)JavaBean實(shí)現(xiàn)的。
這些企業(yè)Beans允許服務(wù)開發(fā)者集中于商業(yè)邏輯,并且讓EJB Server處理傳送穩(wěn)定的,可升級(jí)服務(wù)的復(fù)雜工作。
JavaServerPages 技術(shù)和Servlets向客戶層提供了易于訪問的Internet型服務(wù)的中間層功能。Jsp技術(shù)使用戶接口開發(fā)者更加容易的提供向任何瀏覽器用戶提供動(dòng)態(tài)頁面的服務(wù)。Servlets讓基于Java技術(shù)的開發(fā)者有更大的自由來在Java語言中提供完全的動(dòng)態(tài)服務(wù)。
6. 客戶層
J2EE平臺(tái)支持幾種類型的客戶。
許多J2EE服務(wù)被設(shè)計(jì)為瀏覽器用戶服務(wù),這些服務(wù)通過動(dòng)態(tài)生成Html頁和表單來同客戶端實(shí)現(xiàn)交互,而Jsp和Servlets是通過讓這些商業(yè)數(shù)據(jù)通過某種方式格式化,使客戶端更容易來同它工作。這些客戶端可以是運(yùn)行于瀏覽器中的JavaApplet和基于Java技術(shù)的程序。
要注意的是安全是多層結(jié)構(gòu)的關(guān)鍵部分,在J2EE中安全性總是通過平臺(tái)和管理員來解決的。在大多案例中,服務(wù)方或客戶方都不需要開發(fā)者與安全邏輯。
7. 基于Html頁的客戶
在Java2中可以實(shí)現(xiàn)向用戶的瀏覽器直接提供動(dòng)態(tài)Html頁的服務(wù),在JavaServerPage 技術(shù)中通過在Html頁中插入Java代碼動(dòng)態(tài)生成頁是一種很容易的事情。在一些例子中,某些服務(wù)需要一些綜合的代碼,者可以通過從Jsp中調(diào)用JavaBean的方法來實(shí)現(xiàn)。
8. J2EE聲明
J2EE應(yīng)用程序模型的一個(gè)重要的目標(biāo)就是使應(yīng)用程序最小化。實(shí)現(xiàn)這一點(diǎn)的一種方法是提高在J2EE平臺(tái)上運(yùn)行普通任務(wù)的負(fù)擔(dān),這些普通任務(wù)包括強(qiáng)制一個(gè)應(yīng)用程序的安全目標(biāo),執(zhí)行它的交易處理,鏈接它所需要的組件。
J2EE提供了一種簡單的,公開的方式來說明這些行為。這些說明被分散的放在各部分代碼中和開發(fā)描述中,開發(fā)描述是應(yīng)用程序包的一部分,這些基于xml的說明使應(yīng)用程序開發(fā)者不用修改任何組件就可以改變應(yīng)用程序的作用。