国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

企業JavaBeansTM技術官方介紹

2019-11-18 11:46:53
字體:
來源:轉載
供稿:網友

  企業javaBeansTM技術介紹
  
  今天, 對企業開發人員來講, 難以編寫分布式商務應用程序和其它任何較大的應用程序是他們所面臨著一個共同問題。假如一個應用程序是分布式的,或在網絡中以多重形式出現,那它必然應該是一個綜合化的產物。假如一個應用程序必須可靠而有保證地執行它的商務邏輯,
  那么其綜合化程度又必然需要進一步提高。
  
  企業所面臨的另一個復雜問題是企業自身的基本操作環境也是多種多樣的。另外, 企業希望能以盡可能快的速度建立自己的應用程序, 而不是被限制在單一的平臺上。理想的情況是,
  企業開發人員只編寫一次應用程序, 而該程序即可在任意平臺上運行。企業JavaBeansTM技術就是希望提供這種能力。
  
  企業JavaBeans(EJB)的組件結構是以作為可重復使用的服務器端組件而設計的,它使企業能夠建立可升級、安全可靠、可運行于多重平臺且以商務為重點的應用程序。本文描述了EJB組件模型的含義和結構,并且給出了一個EJB組件如何工作的實例。
  
  
  什么是企業JavaBeans技術?
  
  EJB技術的設計目標
  
  企業應用程序模型
  
  特性
  
  開發人員的角色分配
  
  開發過程
  
  EJB的未來
  
  結論
  
  什么是企業JavaBeans技術?
  
  EJB結構是JavaTM平臺上的服務器端組件模型。設計EJB結構的目的是, 通過使企業開發人員將注重力只集中于編寫商務邏輯, 從而解決上面所提出的問題。EJB技術取消了編寫"全程(plumbing)"
  碼的要求。例如, 企業開發人員不再需要編寫那些處理事務行為、安全、連接共享或線程的代碼, 因為EJB體系結構將這些任務委托給服務器廠商完成了。
  
  對用戶和這一技術的實現者來說, 將會獲得如下收益:
  
  生產效率: 使用這一技術, 企業開發人員將會進一步提高生產效率。他們不僅能夠獲得在Java平臺上的開發成果, 而且能夠將注重力集中于商務邏輯,
  從而使效率倍增。
  
  業內支持: 試圖建立EJB系統的客戶會獲得一系列可供選擇的解決方案。企業JavaBeans技術已經被多達25個公司所接受、支持和應用。
  
  投資保護: 企業JavaBeans技術建立在企業現存系統之上。事實上, 許多EJB產品都將建立在已有的企業系統之上。今天企業所使用的系統,
  明天將會運行企業JavaBeans組件。
  
  結構獨立: 企業JavaBeans技術將開發人員和底層中間件相隔離; 開發人員看到的僅僅是Java平臺。 這一點除下面將要談到的交叉平臺的好處外,
  還將使得EJB服務器廠商在不干擾用戶的EJB應用程序的前提下, 有機會改進中間件層。
  
  服務器端僅寫一次, 即可隨處運行(Server-Side Write Once, Run AnywhereTM): 通過對Java平臺的支持,
  EJB技術將"僅寫一次, 隨處運行"的概念提高到了一個新的水平。它可以保證一個EJB應用程序可運行于任何服務器, 只要這個服務器能夠真正提供企業JavaBeans
  APIs。
  
  
  EJB技術的設計目標
  
  服務器端環境和其所需工具極大地影響了EJB技術的設計目標。 一個主要的設計目標是減少(盡可能地)建立分布式應用程序的過程;它是通過將一般需要手工編碼的特性轉化為企業Beans簡單聲明屬性來實現的,
  這些聲明屬性使開發效率大大提高, 因為某些行為, 如安全和事務不是以代碼形式, 而是通過Bean自身的"標記" 來設定的,。這種設計特性也是EJB技術使開發人員將注重力集中于編寫商務邏輯的另一條途徑。
  
  
  EJB規范創建了一種底層結構, 它關系到系統級編程, 如事務、安全、線程、命名、對象生命周期、資源共享、遠程訪問和persistence等等;它同時也簡化了訪問現存應用程序的過程,
  并為工具的創建和使用提供了統一的應用程序開發模型。
  
  
  企業應用程序模型
  
  
  除提供底層結構以外, EJB技術還涉及到另外一個問題。有兩種建立企業應用程序的基本模型。在第一個模型中, 客戶是從作為一個應用程序的對象開始對話期的;
  該對象可代表客戶執行一項工作, 有可能包括多重數據庫事務;在第二個模型中, 客戶訪問一個對象, 這個對象代表了數據庫中的一個實體。EJB的設計適用性很廣,
  它包括了這兩種模型:
  
  
  session Beans包括了第一種模型。一個Session Bean是一個對象, 它代表了與客戶的一個瞬時對話, 并為客戶執行數據庫讀寫操作;這些數據庫的訪問是在一個事務處理過程中實現的。一個Session
  Bean的字段包括對話的狀態且是瞬時的,之所以如此的意義在于, 一旦服務器或客戶崩潰, Session Beans就不存在了。該模型典型地用于數據庫編程語言,
  如PL/SQL。
  
  
  Entity Beans包括了第二種模型。一個Entity Bean與作用于一個數據庫中的數據的方法一起代表了這些數據。在關系型數據庫中,
  例如一個雇員信息表格, 表中的每一行都有一個Bean。Entity Beans是事務型的且長壽, 只要數據庫中的數據存在, 則Entity
  Bean就存在。該模型大多數典型地應用于面向對象的數據庫中。
  
  
  請注重在EJB規范中, 支持Session Beans是強制性的, 而支持Entity Beans在目前是選擇性的; 但在EJB規范2.0版中,
  它將成為強制性的。
  
  [[The No.2 Picture.]]
  
  上圖顯示了EJB技術的體系結構。EJB規范支持任何類型的客戶, 因為該規范不強制要求任何遠程對象的"網線"協議;這就意味著一個服務器可支持多種協議,
  如RMI、IIOP(CORBA)和DCOM等;它也說明, 一個EJB服務器的客戶程序不一定要用Java語言來編寫。
  
  
  EJB服務器實際是各種支持EJB安裝的服務的集合, 這些服務包括分布式事務治理、分布式對象治理和對這些對象的分布式調用以及低層次系統服務。簡而言之,
  EJB服務器治理那些支持EJB組件所需要的資源。一個EJB服務器提供商可提供一個容器的實現(詳情見后), 他也可以為第三方廠商提供API以使其能嵌入附加EJB容器。EJB規范在服務器的設計和實現上給了開發人員以極大的自由。
  
  
  EJB服務器正象是EJB組件的一個家, 而容器則是Bean生活的地方, 就象是一個記錄"生活"在數據庫中一樣。它提供了一個可升級、安全和事務性的環境,
  在該環境中Bean可以操作。處理對象生命周期(包括創建和銷毀一個對象)的正是容器。容器也負責Bean的狀態治理。
  
  
  容器對客戶是透明的, 容器上沒有客戶API。當一個Bean被安裝在容器中時, 該容器提供兩種實現: Bean的EJBHome接口的實現(詳情見后)和Bean的遠程接口的實現。容器也負責保證在JavaJNDI
  中能夠獲得Bean的EJBHome接口。
  
  
  要構造一個Bean, 你必須首先實現商務方法。 例如, 假如你正在編寫一個帳目檢查Bean, 你可能要實現一個"借方"方法用來作為接口的一部分;你還必須實現兩種類型的EJB接口之一
  --Session Bean或Entity Bean;這些接口包括了諸如與工作設置治理相關的方法并且不暴露給客戶。
  
  
  當把一個Bean安裝在服務器上時, 遠程接口(在CORBA中通常稱作skeleton)則被自動生成。遠程接口的實現被稱為EJBObject,
  它只將程序員指定的遠程接口暴露出來。盡管企業Bean類包含了同樣的方法, 但它并不實現遠程界面。 EJBObject的作用就象是一個代理人,
  它截取遠程對象調用并調用企業Bean實例中的適當的方法。
  
  
  一個EJB容器可實現安裝在該容器中的每個企業Bean的EJBHome接口, 它答應Bean的創建和清除, 并且可查詢有關Bean的信息或"元數據"。該容器使客戶通過JNDI便可獲得EJBHome接口。對Entity
  Beans來說, EJBHome接口也包含了一個或多個"finder"方法, 使客戶用一個主鍵即可查詢有關Bean的信息。
  
  特性
  
  
  應用程序開發人員所面臨的最復雜的問題之一是編寫分布式事務應用程序。EJB技術的一個主要特性就是它對分布式事務的支持;EJB技術使你可編寫訪問跨越多個EJB服務器的多重分布式數據庫的應用程序。為使這一工作變得簡單,
  EJB規范答應你在部署階段就以聲明的形式指出事務行為, 而治理事務行為的負擔被轉移給服務器, 非凡是轉移給容器和EJB服務器提供者。假如Bean的開發人員有更高的事務需求,
  則可使Bean通過程序來治理事務界限。
  
  
  安全是所有企業產品的需求。EJB組件模型充分發揮了核心Java平臺安全模型的作用, 從而給予你兩種設置安全的方法。第一, 你可以在Bean的EJB-JAR文件中設置安全描述符;
  第二, 你可以使用java.security包實現對安全的程序化治理。
  
  
  EJB的另一個設計特性是獨立于對象的通信協議。這有許多好處, 首先, 它可以使編寫客戶端應用程序的程序員免于選擇通信協議; 其次, 它答應EJB服務器的建立者實現對其用戶最為重要的協議。例如,
  ORB提供者可能僅僅實現CORBA協議, 而UNIX提供者則可能實現RMI和CORBA協議。但無論如何, 所用協議對Bean的開發人員是透明的,
  他僅僅針對Java平臺來編寫程序。
  
  
  Java平臺為EJB服務器提供了許多繼續性的優點。最明顯的一點是, 一旦基于Bean的應用程序編成后, 它便可以在任何可運行企業Bean服務器的地方運行;其連帶的優點是升級性。假如你目前的EJB應用程序在性能上出了問題,
  你可以將應用程序的主要部分移植到另一個更高性能的平臺的EJB服務器上。
  
  
  專用容器可大大簡化對現存企業應用程序的訪問。這樣的容器可使現存非Java語言應用程序作為Bean出現, 它使Java開發人

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 莱芜市| 伊宁市| 柳河县| 普兰店市| 呼和浩特市| 璧山县| 金溪县| 乌拉特中旗| 榆树市| 高青县| 遵义市| 襄樊市| 荔浦县| 阆中市| 滦南县| 广河县| 高台县| 聂荣县| 电白县| 保康县| 台东市| 澄江县| 唐河县| 封丘县| 宽甸| 肥东县| 桐庐县| 柳江县| 曲麻莱县| 冕宁县| 花莲县| 临沧市| 贵阳市| 社旗县| 乡宁县| 昌平区| 金川县| 固阳县| 双城市| 鹤山市| 噶尔县|