您现在的位置是:Instagram刷粉絲, Ins買粉絲自助下單平台, Ins買贊網站可微信支付寶付款 >
08 訂閱轉換后端搭建(python后端開發需要學什么)
Instagram刷粉絲, Ins買粉絲自助下單平台, Ins買贊網站可微信支付寶付款2024-07-18 12:34:28【】3人已围观
简介EE中南大學羅新星畢文杰企業應用系統的開發一直面臨著重大挑戰:一方面,企業應用系統面對的是一個異構的分布式環境,它必須支持與已有系統的集成性和與其他系統的互操作性;另一方面,作為為客戶、合作伙伴和企業
中南大學 羅新星 畢文杰
企業應用系統的開發一直面臨著重大挑戰:一方面,企業應用系統面對的是一個異構的分布式環境,它必須支持與已有系統的集成性和與其他系統的互操作性;另一方面,作為為客戶、合作伙伴和企業內部提供信息服務的平臺,企業系統還必須具有高可用性、安全性、可靠性和可伸縮性。這些要求再加上復雜多變的用戶需求和不斷伸縮的交付時間,使得企業系統的開發越來越困難。開發商和廣大程序員一直在努力推動和殷切期待一個成熟、標準的企業平臺來簡化和規范企業系統的開發和部署。Java技術的出現,尤其是J2EE(Java 2 Platform Enterprise Edition)平臺的推出正是這種努力的結果,也使得企業系統的開發由此變得更加快速和方便。需要指出的是,J2EE本身是一個標準,它為不同廠商創建平臺產品提供了標準,使不同J2EE平臺產品之間的交互成為可能。
J2EE旅程
Java于1996年由Sun公司推出,當時它的主要用途是制作產生動態網頁的Applet。后來,人們發現Java的“一次開發,多次運行”、純面向對象的特性、垃圾回收機制和內置的安全特別適合于開發企業應用系統。于是,企業應用開發商紛紛在Java標準版的基礎上各自擴展出許多企業應用API,其結果導致基于Java的企業應用呈爆炸式增長。但是各企業系統API之間又不能相互兼容,破壞了Java的平臺獨立性。鑒于此,Sun公司聯合IBM、Oracle、BEA等大型企業應用系統開發商于1998年共同制訂了一個基于Java組件技術的企業應用系統開發規范,該規范定義了一個多層企業信息系統的標準平臺,旨在簡化和規范企業應用系統的開發和部署。這一規范和其定義的平臺就構成了J2EE。目前J2EE的最新版本是J2EE 1.3。需要注意的是,J2EE本身是一個標準,而不是一個現成的產品(雖然現在有很多符合J2EE標準的產品),它由以下幾個部分組成:
J2EE規范。該規范定義了J2EE平臺的體系結構、平臺角色及J2EE中每種服務和核心API的實現要求。它是J2EE應用服務器開發商的大綱。
J2EE兼容性測試站點。Sun公司提供的一個測試J2EE應用服務器是否符合J2EE規范的站點,對通過該站點測試的產品,Sun公司將發放兼容性證書。
J2EE參考實現。即J2EE SDK,它既是Sun公司自己對J2EE規范的一個非商業性實現,又是為開發基于J2EE企業級應用系統原型提供的一個免費的底層開發環境。
J2EE實施指南。即BluePrints文檔,該文檔通過實例來指導開發人員如何去開發一個基于J2EE的多層企業應用系統。
組件-容器 搭建體系架構
J2EE規范定義了一個基于組件的多層企業應用系統開發平臺,其邏輯結構如圖1所示。圖中的橢圓形表示組件,大矩形表示容器,包含向下文字的小矩形表示API,箭頭表示訪問,箭頭線上的文字表示相應的協議。
J2EE是一個基于組件-容器模型的系統平臺,其核心概念是容器。容器是指為特定組件提供服務的一個標準化的運行時環境,Java虛擬機就是一個典型的容器。組件是一個可以部署的程序單元,它以某種方式運行在容器中,容器封裝了J2EE底層的API,為組件提供事務處理、數據訪問、安全性、持久性等服務。在J2EE中組件和組件之間并不直接訪問,而是通過容器提供的協議和方法來相互調用。組件和容器間的關系通過“協議”來定義。容器的底層是J2EE服務器,它為容器提供J2EE中定義的各種服務和API。一個J2EE服務器(也叫J2EE應用服務器)可以支持一種或多種容器。在圖1中,你可能已經注意到每個容器的服務包括兩部分:J2SE(Java 2 Platform Standard Edition)和一組擴展的服務。這是因為J2EE是以Java標準版為基礎的,各容器在J2SE之上再根據需要提供一些擴展的服務,如目錄服務、事務管理、數據訪問、消息機制、安全性等。
J2ee的核心——EJB
J2EE定義了四種組件:Applet組件、Application客戶組件、Web組件及EJB(Enterprise JavaBeans)組件。其中Applet和Application客戶組件在客戶端運行,J2EE通過Java插件為Applet提供運行環境,Application客戶的容器就是本地Java虛擬機。Web及EJB組件在服務端運行。J2EE中包含兩種Web組件:JSP和Servlet。它們是Web服務器的功能擴展,都能生成動態Web頁面。不同的是JSP是將Java代碼嵌入到HTML中,服務器負責解釋執行,生成結果返回用戶(與ASP技術相似)。而Servlet是單獨的Java類,它動態生成HTML文件返回給客戶。Web組件的容器比較典型的就是基于Java的Web服務器。
EJB是J2EE平臺的核心,也是J2EE得到業界廣泛關注和支持的主要原因。我們知道,J2EE的一個主要目的就是簡化企業應用系統的開發,使程序員將主要精力放在商業邏輯的開發上。EJB正是基于這種思想的服務器端技術,它本身也是一種規范,該規范定義了一個可重用的組件框架來實現分布式的、面向對象的商業邏輯。EJB的核心思想是將商業邏輯與底層的系統邏輯分開,使開發者只需關心商業邏輯,而由EJB容器實現目錄服務、事務處理、持久性、安全性等底層系統邏輯。
一個可部署的EJB組件包含3個部分:
Remote 接口 Remote接口定義EJB組件中提供的可供用戶調用的方法,也就是通常所說的實現商業邏輯的函數或過程(如計算商品價格的函數),以供遠程客戶端調用。在EJB組件部署到容器的時候,容器會自動生成Remote接口相應的實例,即EJB對象,它負責代理用戶的調用請求。
Home接口 Home接口定義一組方法來創建新的EJB對象,查找、定位和清除已有的EJB對象。在EJB組件部署時容器也會自動生成相應的Home對象,該對象負責查找和創建EJB對象,返回EJB對象的引用給客戶;用戶利用該引用調用EJB組件的方法,得到結果;最后Home對象清除EJB對象。我們可以形象地稱Home接口為EJB對象的工廠。
Enterprise Beans類 Enterprise Beans類是商業邏輯的具體實現類。其可供用戶調用的方法在Remote接口中定義。根據功能不同,EJB 2.0規范中定義了三種Enterprise Beans:會話Beans(Session Beans)、實體Beans(Entity Beans)和消息驅動Beans(Message-driven Beans)。
會話Beans分無狀態和有狀態兩種。一般無狀態的會話Beans模擬商業邏輯,比如計算價格等。有狀態的會話Beans通常模擬一個客戶會話,它會臨時保存客戶信息,根據客戶要求調用其他Beans來存取數據。兩種會話Beans都不保存狀態信息或數據,當客戶斷開連接或服務器關閉時,會話Beans也隨之消失。一個會話Beans的典型例子是網站上的購物車。
實體Beans模擬商業數據,它表示一個數據存儲,可以是狀態信息或數據庫中的一條紀錄。實體Beans在客戶斷開連接或服務器關閉后,仍有服務保證其數據得以保存。一個實體Beans的典型例子就是客戶賬號信息。
消息驅動Beans在行為上很像會話Beans。不同的是僅在需要向這些Beans發送消息時才調用消息驅動Beans,比如在需要的時候發送用戶確認信息等。
另外,在提交和部署EJB組件時,還需要兩個文件:部署描述文件,容器根據該文件來部署Enterprise Beans,提供所要求的服務;EJB jar文件,它是提交給EJB容器的一個部署單元,容器(應用服務器)在部署時解開它,裝入Enterprise Beans。
EJB容器非常復雜,一般由專業的J2EE應用服務器開發商提供,比較流行的EJB容器由IBM的WebShpere、BEA公司的WebLogic Server、Sun公司的iPlant等應用服務器提供。EJB容器除了為EJB提供事務處理、目錄服務、持久性管理和安全性服務外,還負責EJB的部署、發布和生命周期管理。
平臺標準服務
服務是組件和容器之間,以及容器和J2EE服務器之間的接口,在實現層面上它就是一系列API和協議。J2EE平臺定義了一組標準的服務,其中有些服務是由J2SE提供的,有些則是J2EE對Java的擴展。
目錄服務 JNDI(Java Name and Directory) API為應用程序提供了一個統一的接口來完成標準的目錄操作,由于JNDI是獨立于目錄協議的,應用程序可以用它訪問各種目錄服務,如LDAP、NDS、DNS等。
數據訪問 JDBC(Java Database Connectivity) API為訪問不同類型的數據庫提供了統一的途徑,屏蔽了不同數據庫的細節,具有平臺無關性。J2EE平臺除了要求核心的JDBC API(包含在J2SE中)外,還要求擴展的JDBC API 2.0,它支持行集、連接池和分布式的事務處理。
事務處理 JTA(Java Transaction Architecture)定義了一組標準的接口,為應用系統提供可靠的事務處理支持。JTS(Java Transaction Service)是CORBA OTS事務監控的Java實現。JTS規定了事務管理器的實現方式,該事務管理器在高層支持JTA標準,在底層實現了OMG OTS規范的Java映射。
消息服務 JMS(Java Message Service)是一組用于和面向消息的中間件相互通信的API。
它既支持點對點的消息通信,也支持發布/訂閱式的消息通信。 電子郵件 JavaMail API允許在應用程序中以獨立于平臺、獨立于協議的方式收發電子郵件。JAF(JavaBeans Activation Framework)負責處理MIME編碼,JavaMail利用JAF來處理MIME編碼的郵件附件。
CORBA兼容接口 RMI(遠程方法調用)是在分布式對象間通信的Java本地方法,它使應用程序調用遠程方法像調用本地方法一樣,不需要考慮所調用對象的位置。RMI-IIOP是RMI的擴展,是符合CORBA標準的對象通信協議,也是J2EE默認的組件通信協議。Java IDL允許J2EE應用組件通過IIOP協議訪問外部的CORBA對象。
安全服務 JAAS(Java Authentication and Authorization Service)用兩個步驟實現安全性:認證,即由用戶提供認證信息(如用戶名和密碼)來獲得系統認證,這一過程又稱之為登錄;授權,在被確認為合法用戶后,系統根據用戶的角色授予其相應的權限。J2EE的授權是基于安全角色的概念,一個安全角色是一個擁有相同權限的邏輯組。J2EE的安全角色由應用組件提供商來定義。
Web服務支持 目前J2EE還不提供對Web服務的支持。Sun提供了一套API及其實現WSDP作為對J2EE的擴展,但目前還不是J2EE規范的內容。在WSDP中,JAXP用來解析XML文檔;JAXR向UDDI服務器注冊Web Services;JTX/RPC用基于XML的協議(如SOAP)來發送和接收XML文檔;JWSDL處理WSDL文檔。雖然J2EE不是為Web服務而生,但它現在
很赞哦!(71)
相关文章
- 03 youtube 買粉絲s download mp3 and mp4 youtube(芭比動畫片的片尾曲叫什么名字?)
- 01 進出口貿易財務處理(關于出口貿易公司的帳務處理相關會計分錄怎么做?)
- 01 進口產品批發貿易是傳銷嗎(一個朋友要帶我去香港做貿易生意看一下是不是做傳銷的?)
- 01 進出口貿易訂單怎么找(外貿訂單怎么接)
- 03 youtube to mp3 買粉絲 online 買粉絲nverter mp4 mp3 e(QQ音樂下載的歌曲怎么轉換成mp4?)
- 01 進出口貿易海關報備(進出口貿易海關備案流程)
- 03 youtube to mp3 no download 買粉絲 online 買粉絲(高分懸賞!求一首英文流行歌曲)
- 03 youtube to mp3 program pc(NDSL下載工具是什么?)
- 01 進出口貿易順差和逆差(順差和逆差公式是什么?)
- 01 進口水果貿易公司經營范圍(農產品貿易公司經營范圍)
热门文章
站长推荐
03 youtube to mp3 買粉絲 software是什么軟件做(C#的側邊欄技術。答好了加分。)
03 youtube 買粉絲s download mp3 naa songs 買粉絲 download for windows(尋一個聽歌的網站)
01 進出口貿易是屬于什么行業(貿易屬于什么行業)
03 youtube to mp3 online 買粉絲 買粉絲nverter pro中文版pc6(youtube中文諧音怎么讀)
01 進出口貿易額同比增速怎么算(中國服務貿易進出口總額同比增長多少?)
03 youtube to mp3 買粉絲 online 買粉絲nversion of ppt(尋一個聽歌的網站)
01 進口報關單的貿易國別(進口報關單上 貿易國別問題)
01 進出口貿易順差和逆差的區別(貿易順差和貿易逆差分別指什么)