天天看點

j2ee模型 (抄書)

        J2EE應用模型建立在将工作劃分為不同層次的基礎上.用戶端表達從伺服器端邏輯和業務邏輯分理出來.用戶端表達以WEB浏覽器,applet或者應用程式(application)來呈現;伺服器邏輯則通過java script page或servlet的形式來表現;業務邏輯層主要通過資料庫或者EJB的方式來展現.J2EE API主要關注的是如何實作各層之間的互動.每一層的接口都是标準化的,使得了解J2EE核心概念的程式員可以把他們的經驗應用到各種J2EE項目中去.

        J2EE應用部署的核心是相容J2EE的應用伺服器.應用伺服器支援駐留業務邏輯元件和WEB元件,并且可以通路J2EE的所有能力.值得注意的是,J2EE API并沒有講到這些伺服器應該如何設計等本質問題,也沒有講到應該如何完成部署,維護和一般性的管理.J2EE關心的重點放在程式設計的接口和運作時的行為上面.這一特殊性可能會使得原本很熟悉IBM Websphere的系統管理者經驗對BEA Weblogic無從下手.雖然管理經驗很難在不同的伺服器上轉移,但是代碼卻可以很透明的在這些伺服器上轉移.

        簡單的說,J2EE API就是對于J2EE容器或外部企業元件提供某個服務的包裝器.一個完整的J2EE環境可能包括一個或多個J2EE伺服器,在這些伺服器中部署了一個或多個servelet和EJB元件,一個外部事務管理器,一個ORACAL或者DB2關系資料庫,以及一個消息中間件系統.整個J2EE平台需要實作以下API:

        Servlet 接口 (java servlet API)

              允許WEB伺服器處理HTTP請求,并将内容傳回給用戶端.Servlet代碼在響應請求的過程中也能夠使用任何其他J2EE服務.

        JSP 接口(java server pages)

                這些文本包括java代碼的片斷,并且存儲在WEB伺服器中.一個典型的JSP由HTTP和嵌入的java代碼組成,根據應用的需求定制顯示的内容.當客戶請求JSP的時候,伺服器将JSP編譯成為一個servlet,然後,如果編譯好的話,就執行JSP并傳回結果.因為JSP比servlet更容易編寫和修改,是以經常使用他們來建立基于WEB應用的HTTP使用者界面.

        EJB接口(Enterprise javabeans)

                允許建立由伺服器管理的分布式對象,表現表示業務資料和應用背後的邏輯.EJB被細分為3類:實體 bean(entity bean)定義的是應用資料結構;會話bean(session bean)提供能夠控制實體的其他資源的業務方法;消息驅動bean(messagedriver bean)類似于會話bean,但是他們由來自消息中間件的某個消息觸發.EJB标準還包括對事務完整性的支援.管理EJB是J2EE伺服器的一項主要職責.

        JNDI(java命名和目錄接口)

                為通路目錄提供一般性的支援.另外,還為企業目錄伺服器例如基于LDAP的雇員目錄提供一個前端.JNDI在J2EE應用的上下文中用于辨別資源,如EJB和資料庫連接配接等.經由JNDI來查找和通路所有外部資源,使應用可以很容易地重新定位和分布.

        Java 郵件接口(javamail API)

                支援常見的點對點電子消息通信.對于所有的現實目标來說,這意味着需要支援INTERNET電子郵件.JavaMail使用通用的體系結構支援可插拔的消息傳輸和檢索系統.Sun公司産品的預設安裝支援SMTP,IMAP和POP,以及其他來自的三方的其他可用協定.盡管J2EE環境必須提供一個JavaMail的實作,但是這些環境不必為特殊的傳輸機制提供任何基礎構架. 

        Java消息伺服器(Java Message Service  API)

                允許J2EE運用內建面向消息的中間件(MOM)套裝軟體,例如Sonic公司的SonicMQ以及IBM公司的MQSerise.MOM套裝軟家允許在應用之間路由消息,提供單純電子郵件不能提供的消息傳遞和服務品質保證.

        Java事務接口(Java Transaction API)

                允許應用管理他們自己的事務.Java事務接口支援不同層次上和不同伺服器上的不同元件參與到同一個事務中來.

        J2EE标準還有一些額外的特性和需求,例如它将互操作委托給CORBA的分布式對象.此外,它要求支援全部的J2SE API集合,包括為資料通路提供JDBC API.最終,它提供了一個标準的,基于XML的部署描述檔案系統,使用這些部署描述檔案來描述J2EE應用的結構,特别是那些EJB元件和WEB應用的結構,可以更快速的實作部署.

繼續閱讀