1. 程式人生 > >java ee容器、元件、通訊型別簡介

java ee容器、元件、通訊型別簡介

    java ee不是程式語言而是規定開發符合java ee規範的軟體系統需要使用java程式語言。java ee規範定義了面向Internet的組成部分和各組成部分之間的互動協議。

具體包含:

1.容器規範:容器是元件的執行環境,負責元件的生命週期管理和各組成部分之間的互動協議,定義了各種元件的容器型別以及每種容器提供的服務。並管理元件的生成、呼叫和銷燬,簡化了企業級軟體開發中複雜的物件管理事務,克服了C++語言記憶體洩漏的致命缺陷。

2.元件規範:是java ee 的標準化部件,完成系統的業務和邏輯功能,在java ee 裡元件執行在容器中元件,元件之間是不能互相呼叫的,必修通過容器來完成。

3.服務規範:規定了連線各種外部資源的標準介面

4.通訊協議規範:針對各種協議訪問進行專門的優化

 

容器型別:

1.客戶端應用容器:即是普通java SE的JVM,它駐留在客戶端管理和執行客戶的JavaBean元件,與一般java類沒有區別,這個規範是將它納入自己的規範之內,進行統一的約定。

2.web容器:管理web元件的執行和呼叫,javaee定義了兩種web元件Servlet和JSP,可以生產動態web內容。web容器可以執行在符合javaee的應用伺服器上,駐留在伺服器端,外部應用可以通過HTTP和HTTPS協議與Web容器進行通訊,進而訪問Web容器管理的Web元件。

3.企業javaBean容器:管理javaBean物件的生命週期和方法呼叫,它定義了三種執行在EJB容器內的元件(會話EJB、訊息驅動EJB、實體EJB),其他元件通過RMI/IIOP協議與EJB容器進行通訊,通過EJB容器來訪問EJB元件。

 

 

元件型別:

1.客戶端元件:即javaBean類,基於SE執行在客戶端容器內,有自己獨立的JVM空間。

2.web元件:能接收HTTP請求並進行處理產生web響應,並規定了兩種Web元件

    Servlet:使用標準java類編寫模式的Web元件,但是難以開發複雜的Web應用

    JSP:使用編寫HTML網頁的方式編寫Web元件,嵌入java語言程式碼。

3.EJB元件:引入Spring框架和註釋程式設計技術,推出了3.0元件規範實現了輕量化目標,結構簡單部署方便呼叫容易。

 

服務(API)型別:

1.資料庫連線服務(JDBC):操作資料庫的統一程式設計介面

2.訊息服務連線服務(JMS):通過非同步呼叫的方式完成多個應用之間的資料傳輸和方法呼叫

3.資料持久化服務(JPA):通過註解或XML描述物件-關係表的對映關係,將執行期的實體物件持久化到資料庫中。

4.命名和目錄服務(JNDI):提供統一的介面連線各種外部的命名和目錄服務系統,負責管理物件的生命週期,對外提供檢索物件的方法,可以通過JNDI訪問命名服務系統,取的命名系統中儲存的物件。

5.安全性驗證和授權服務(JAAS):為了標準和一致性,尤其是數字認證方面提供了靈活和可伸縮的機制來保護客戶端或伺服器端的java程式,強調通過驗證誰在執行程式碼以及他的許可權來保證系統免受使用者的攻擊,使使用者免受下載下來的程式碼攻擊。

6.電子郵件服務(JavaMail):面向Internet應用,傳送和接收郵件是必須具備的功能,通過該API連線各種Mail伺服器使用統一的標準的模式進行Mail的傳送和接收,包括複雜的非純文字的附帶多附件的郵件。

7.事務服務(JTA):保證系統安全可靠的技術保障,當業務邏輯需要跨多個數據資源的讀寫時使用傳統的資料庫內建的事務處理是無法完成的,引入了二階段提交技術保證了跨多個數據資源的事務處理維持系統統一性。

8.XML處理服務(JAXP):為了網路服務而開發,以提供標準的方法來操作XML問答。

9.XML Web服務(JAX-WS):是一組規範XML WebServices的API,在伺服器端使用者只需要通過定義遠端呼叫所需要實現的介面SEI並提供相應的實現,通過呼叫JAX-WS的服務釋出介面就可以就可以將其釋出為Web Service介面。在客戶端使用者可以使用JAX-WS建立一個代理,用本地物件來替代遠端服務,來實現遠端伺服器的呼叫。

10.XML繫結服務(JAXB):是一項可以根據XML Schema產生Java類的技術,該技術將XML例項文件反向生成Java物件樹的方法,將java物件樹的內容重新寫到XML例項文件,另一方面還提供了快速簡單的方法將XML模式繫結到Java表示,使java程式中可以方便的載入XML資料並以XML檔案作為資料儲存方式。

11.帶附件的SOAP服務(SAAJ):是一個可使使用者利用java來建立讀取或修改SOAP訊息的API,通過SAAJ可以使Web服務的SOAP訊息附帶一個或多個附件,擴充套件了Web服務的應用範圍,SAAJ適合基於文件的同步或者非同步Web Service,SAAJ使用簡單有助於在Java環境中整合各種Web Service,擴充套件了對文件風格的Web Service痛信的自然支援。

12.XML Web服務註冊(JAXR):提供了與多種型別註冊服務進行互動的API,JAXR執行客戶端訪問與JAXR規範相相容的web Services的形式執行,支援三種註冊服務型別。

13.與其他遺留系統互動服務(J2EE Connector Architecture):定義了聯結器和應用伺服器之間的契約,以及客戶端和聯結器之間的契約,前者通過服務提供者介面定義,後者通過客戶端呼叫介面定義。

 

 

元件通訊協議:

    各種元件執行在java ee中的容器裡,元件之間是不允許直接取的物件引用和直接呼叫的,只能使用規定的通訊協議與元件所在容器進行通訊並請求目標元件。

1.HTTP:用於傳送WWW方式的資料,採用請求響應的方式,作為與web容器通訊的標註協議,延續了Web應用的標準化。

2.HTTPS:應用了安全套接字層作為HTTP應用層的子層,SSL使用40位關鍵字作為RC4流加密演算法。

3.RMI:遠端方法呼叫是在JDK1.1中實現的,大大增強了java開發分散式應用的能力,RMI就是百分之百java的網路分散式應用的核心解決方案,是RPC的java版本同時支援儲存於不同地址空間的程式級物件之間進行通訊,實現遠端物件之間的無縫呼叫。

4.RMI-IIOP:是RMI的功能擴充套件版本,增加了分散式垃圾收集,物件活化和可下載類檔案等,在分散式物件方法上呼叫上它們都完成了最基本的功能

5.SOAP:是一種標準化的通訊規範主要用於web伺服器互動呼叫,是為了簡化網頁伺服器從XML資料庫中提取資料,能夠讓不同應用程式之間通過HTTP以XML的格式交換彼此的資料,使其與硬體平臺、程式語言無關