企業(yè)應(yīng)用模型與JavaEE體系結(jié)構(gòu).ppt_第1頁(yè)
企業(yè)應(yīng)用模型與JavaEE體系結(jié)構(gòu).ppt_第2頁(yè)
企業(yè)應(yīng)用模型與JavaEE體系結(jié)構(gòu).ppt_第3頁(yè)
企業(yè)應(yīng)用模型與JavaEE體系結(jié)構(gòu).ppt_第4頁(yè)
企業(yè)應(yīng)用模型與JavaEE體系結(jié)構(gòu).ppt_第5頁(yè)
已閱讀5頁(yè),還剩48頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、1,企業(yè)應(yīng)用模型與Java EE體系結(jié)構(gòu),應(yīng)用程序的開(kāi)發(fā)模型 傳統(tǒng)應(yīng)用程序模型 三層分布式對(duì)象架構(gòu) 企業(yè)級(jí)應(yīng)用問(wèn)題及解決方案 Java EE架構(gòu)及核心技術(shù),2,應(yīng)用程序的開(kāi)發(fā)模型,計(jì)算機(jī)應(yīng)用程序的一般特點(diǎn) 大多數(shù)應(yīng)用都由三部分組成: 用戶(hù)界面部分:表示層 應(yīng)用邏輯部分:業(yè)務(wù)邏輯層 數(shù)據(jù)訪問(wèn)部分:數(shù)據(jù)訪問(wèn)層,3,應(yīng)用程序的開(kāi)發(fā)模型,應(yīng)用程序開(kāi)發(fā)模型的變遷過(guò)程 單層 兩層 三層 N層,4,傳統(tǒng)應(yīng)用程序模型(一),數(shù)據(jù)訪問(wèn)、表示和業(yè)務(wù)邏輯在一個(gè)應(yīng)用中 代碼復(fù)用、代碼可維護(hù)性、代碼的修改十分困難 應(yīng)用不是分布式的,不具有可伸縮性,主機(jī)系統(tǒng)或單層結(jié)構(gòu):主機(jī)/終端模式,5,傳統(tǒng)應(yīng)用程序模型(二),用戶(hù)界面

2、和程序邏輯綁在一起,代碼難以重用 服務(wù)器的數(shù)據(jù)庫(kù)必須同每一個(gè)活動(dòng)的客戶(hù)保持連接,消耗大量的運(yùn)算資源,隨著客戶(hù)數(shù)目的增加性能不斷下降,且存在死鎖及崩潰的可能 數(shù)據(jù)模型“緊耦合”在每一客戶(hù)端,數(shù)據(jù)庫(kù)結(jié)構(gòu)改變將導(dǎo)致全體客戶(hù)端改變,不利于更新和維護(hù) 原始數(shù)據(jù)通過(guò)網(wǎng)絡(luò)傳遞:加重網(wǎng)絡(luò)負(fù)擔(dān) 客戶(hù)端應(yīng)用程序越來(lái)越大,對(duì)使用者的要求也越來(lái)越高,客戶(hù)/服務(wù)器結(jié)構(gòu):“胖”客戶(hù)端,6,三層分布式對(duì)象架構(gòu),客戶(hù)端:業(yè)務(wù)數(shù)據(jù)模型與UI分開(kāi),更“瘦” 業(yè)務(wù)邏輯在中間層,成為“對(duì)象服務(wù)”。 中間層可以處理多客戶(hù)端,通過(guò):連接池,多線程,對(duì)象一致性處理 編程困難,7,關(guān)于分布式計(jì)算,對(duì)象化的RPC(Remote Procedu

3、re Call) 對(duì)象之間的互操作性 信息的傳遞 在此方面的解決方案: CORBA (Common Object Request Broker Architecture) RMI (Remote Method Invocation) DCOM (Distributed Component Object Model),8,Web服務(wù)器與CGI,WWW瀏覽方式所帶來(lái)的: “Browser-based” 客戶(hù)端與“Internetworking” 計(jì)算方式向服務(wù)器端的集中轉(zhuǎn)化,9,N層計(jì)算模式的引入,從1層到N層,得到的改進(jìn): 每一層可以被單獨(dú)改變,而無(wú)需其它層的改變 降低了部署與維護(hù)的開(kāi)銷(xiāo) 資源(

4、如連接)可以被緩沖和重復(fù)利用 提高了靈活性、可伸縮性,并使性能提高成為可能 瘦客戶(hù)端的引入使Internet接入方便,而計(jì)算被集中至服務(wù)器端 仍然存在的問(wèn)題: 對(duì)企業(yè)級(jí)應(yīng)用開(kāi)發(fā)人員的要求太高:熟悉分布式協(xié)議,進(jìn)行一致性事務(wù)處理,負(fù)載平衡,安全,10,構(gòu)件(component)與中間層開(kāi)發(fā),兩個(gè)轉(zhuǎn)變: 計(jì)算模式上:網(wǎng)絡(luò)計(jì)算(Network Computing) 生產(chǎn)模式上:基于構(gòu)件的開(kāi)發(fā)(Component-based Dev) 二者的結(jié)合: 服務(wù)器端中間層構(gòu)件的開(kāi)發(fā),11,構(gòu)件的優(yōu)點(diǎn)與特點(diǎn),一個(gè)軟件構(gòu)件是一個(gè)組合的單位,它包括合同化聲明的接口及明確說(shuō)明的上下文相關(guān)性。一個(gè)軟件構(gòu)件可以被獨(dú)立部署

5、且服務(wù)于第三方所做的組合。 構(gòu)件的特點(diǎn): 構(gòu)件是編譯碼 構(gòu)件是一個(gè)獨(dú)立部署的單位 構(gòu)件是一個(gè)由第三方進(jìn)行組合的單位 構(gòu)件沒(méi)有持久的狀態(tài) 構(gòu)件的優(yōu)點(diǎn): 可插入 更好的設(shè)計(jì) 更好的復(fù)用 方便的更新 實(shí)現(xiàn)與接口分離,12,企業(yè)級(jí)應(yīng)用開(kāi)發(fā)問(wèn)題,分布式 可移植 面向Web體系 可裝配 滿(mǎn)足企業(yè)計(jì)算要求 一致性 事務(wù)性 安全性 好的特性 可伸縮 可擴(kuò)展 易維護(hù),13,解決方案-應(yīng)用服務(wù)器,應(yīng)用服務(wù)器可以為服務(wù)器端構(gòu)件提供: 一致性,事務(wù)處理與負(fù)載平衡 從而簡(jiǎn)化了編程工作 但在J2EE之前,這些API是應(yīng)用服務(wù)器相關(guān)的!,14,解決方案Java EE,Java EE提供了一套完整的解決所有這些問(wèn)題的框架方案

6、: 提供了分布式、可移植構(gòu)件的框架 為構(gòu)件與應(yīng)用服務(wù)器提供標(biāo)準(zhǔn)API 簡(jiǎn)化了服務(wù)器端中間層構(gòu)件的設(shè)計(jì),15,解決方案Java EE,Java EE對(duì)開(kāi)發(fā)者和用戶(hù)來(lái)說(shuō)意味著: 更短的開(kāi)發(fā)時(shí)間 可重用構(gòu)件 JSP EJB 更簡(jiǎn)化的連接 XML,JDBC,RMI-IIOP,16,Java EE技術(shù)架構(gòu),J2EE架構(gòu):,17,容器和構(gòu)件,18,Java EE核心技術(shù),J2EE核心技術(shù):13種 EJB、 CORBA、 RMI、JSP、 Java Servlet、JavaBean、JDBC XML、JMS,19,Java EE核心技術(shù)-EJB,EJB (Enterprise JavaBeans) : EJ

7、B不是一個(gè)具體的產(chǎn)品,而是一個(gè)Java服務(wù)器端組件開(kāi)發(fā)的規(guī)范,軟件廠商根據(jù)它來(lái)實(shí)現(xiàn)EJB服務(wù)器。 使用EJB,Java程序員可以將一些定義明確的程序塊組合到一起,從而方便、快捷地建構(gòu)分布式應(yīng)用程序。 使用EJB可以使整個(gè)程序分塊明確,并且EJB可以使用其它EJB或JDBC等服務(wù),從而增強(qiáng)了分布式應(yīng)用程序的可擴(kuò)展性和性能; EJB規(guī)范在簡(jiǎn)化分布式應(yīng)用程序開(kāi)發(fā)復(fù)雜性方面做了大量的工作,所以EJB程序員不必太擔(dān)心事務(wù)處理、多線程、資源管理等方面的問(wèn)題,可以專(zhuān)注于支持應(yīng)用所需的商業(yè)邏輯,而不用擔(dān)心周?chē)蚣艿膶?shí)現(xiàn)問(wèn)題。 EJB的使用增強(qiáng)了整個(gè)系統(tǒng)程序的可靠性、可管理性和可移植性。,20,EJB容器是:

8、EJB的運(yùn)行環(huán)境。它提供規(guī)范中定義的接口使EJB類(lèi)訪問(wèn)所需的服務(wù)。容器廠商也可以在容器或服務(wù)器中提供額外服務(wù)的接口。 它的責(zé)任包括:,Java EE核心技術(shù)-EJB,21,Java EE核心技術(shù)-EJB,EJB服務(wù)器是: 管理EJB容器的高端進(jìn)程或應(yīng)用程序,并提供對(duì)系統(tǒng)服務(wù)的訪問(wèn)。EJB服務(wù)器也可以提供廠商自己的特性,如優(yōu)化的數(shù)據(jù)庫(kù)訪問(wèn)接口,對(duì)其他服務(wù)(如CORBA服務(wù))的訪問(wèn)。一個(gè)EJB服務(wù)器必須提供支持對(duì)JNDI的名字服務(wù)和TS事務(wù)服務(wù)的可訪問(wèn)。,22,Java EE核心技術(shù)-EJB,EJB組件的三種類(lèi)型: (1) Entity Bean(實(shí)體Bean) :實(shí)體Bean代表數(shù)據(jù)對(duì)象,通常代

9、表的是數(shù)據(jù)表記錄集的一行,一個(gè)實(shí)體EJB可以同時(shí)與多個(gè)客戶(hù)進(jìn)行交互。 (2) Session Bean(會(huì)話(huà)Bean) :會(huì)話(huà)EJB向客戶(hù)提供一定的服務(wù),如:特定的商業(yè)邏輯、數(shù)據(jù)庫(kù)查詢(xún)等; (3) Message-Driven Bean(消息驅(qū)動(dòng)Bean):以上兩種Bean以同步方式為EJB客戶(hù)提供服務(wù)。消息驅(qū)動(dòng)Bean采用Java消息服務(wù)JMS,客戶(hù)程序可以將消息發(fā)送給消息隊(duì)列,消息驅(qū)動(dòng)Bean檢索消息隊(duì)列,執(zhí)行其內(nèi)容。,23,Java EE核心技術(shù)-EJB,實(shí)體Bean業(yè)務(wù)數(shù)據(jù)模型 對(duì)業(yè)務(wù)概念的反映,也稱(chēng)為領(lǐng)域類(lèi)(domain class) 在持久存儲(chǔ)中業(yè)務(wù)實(shí)體的對(duì)象視圖 提供訪問(wèn)和操作數(shù)

10、據(jù)的對(duì)象封裝 支持多用戶(hù)共享的數(shù)據(jù) 可以從數(shù)據(jù)庫(kù)中存儲(chǔ)的屬性重新實(shí)例化 EJB 服務(wù)器崩潰后仍可重構(gòu) 與數(shù)據(jù)庫(kù)中的數(shù)據(jù)有一樣長(zhǎng)的生命,24,Java EE核心技術(shù)-EJB,實(shí)體Bean 的持久性自管理的持久性 優(yōu)點(diǎn): 開(kāi)發(fā)者有完全的控制 無(wú)需復(fù)雜的提供商支持 缺點(diǎn): 編碼復(fù)雜 在改變時(shí)需要重新編碼和部署 影響可移植性,25,Java EE核心技術(shù)-EJB,實(shí)體Bean 的持久性容器管理的持久性 優(yōu)點(diǎn): 提供商解決,可能會(huì)有更好的緩沖和性能 在部署描述符中進(jìn)行改變即可 可移植性好 缺點(diǎn): 對(duì)容器提供商的工具依賴(lài)性強(qiáng) 可能不易反映復(fù)雜的數(shù)據(jù)關(guān)系,26,Java EE核心技術(shù)-EJB,會(huì)話(huà)bean:

11、經(jīng)常用于涉及多個(gè)實(shí)體bean的業(yè)務(wù)處理和控制邏輯。,27,Java EE核心技術(shù)-EJB,會(huì)話(huà)bean: 相對(duì)生命較短(一般與客戶(hù)同步) 在EJB服務(wù)器崩潰時(shí)被刪除 不表示數(shù)據(jù)庫(kù)中的數(shù)據(jù),但可以訪問(wèn)數(shù)據(jù) 作為一個(gè)客戶(hù)的代表執(zhí)行功能 可以加入事務(wù),28,Java EE核心技術(shù)-EJB,何時(shí)使用會(huì)話(huà)bean: 使用會(huì)話(huà)bean 對(duì)針對(duì)于某一客戶(hù)的處理或控制對(duì)象建模; 對(duì)工作流、任務(wù)和管理活動(dòng)等建模(如訂房、購(gòu)物車(chē)等); 協(xié)調(diào)多個(gè)實(shí)體bean,控制實(shí)體bean之間的交互; 將業(yè)務(wù)應(yīng)用邏輯從客戶(hù)端轉(zhuǎn)移到服務(wù)器端。,29,Java EE核心技術(shù)-EJB,會(huì)話(huà)bean與實(shí)體bean的比較,30,Java

12、EE核心技術(shù)-EJB,兩種類(lèi)型的會(huì)話(huà)bean 無(wú)狀態(tài)(Stateless)bean 表達(dá)一個(gè)無(wú)狀態(tài)的服務(wù)(如列表,mail) 不存儲(chǔ)用戶(hù)相關(guān)信息,進(jìn)行對(duì)請(qǐng)求的響應(yīng) 暫態(tài)的 可用來(lái)構(gòu)造響應(yīng)頻繁而簡(jiǎn)單的訪問(wèn)的bean池 有狀態(tài)(Stateful)bean 維護(hù)客戶(hù)狀態(tài),31,Java EE核心技術(shù)-EJB,實(shí)現(xiàn)EJB的三個(gè)關(guān)鍵構(gòu)件 EJBHome 接口(擴(kuò)展javax.ejb.EJBHome接口):使用了factory設(shè)計(jì)模式,定義了創(chuàng)建、查找EJB的方法。 EJBObject接口(擴(kuò)展javax.ejb.EJBObject接口):使用了proxy設(shè)計(jì)模式,定義了在bean中實(shí)現(xiàn)的業(yè)務(wù)邏輯方法。

13、Bean實(shí)現(xiàn)類(lèi)(實(shí)現(xiàn)javax.ejb.EntityBean/SessionBean):實(shí)現(xiàn)業(yè)務(wù)邏輯。,32,Java EE核心技術(shù)-EJB,EJB的實(shí)現(xiàn)舉例 / business methods public interface Account extends EJBObject /return the account information corresponding to this account. public AccountModel getDetails() throws RemoteException; / updates the contact information for

14、the specified account public void changeContactInformation(ContactInformation info) throws RemoteException; ,33,Java EE核心技術(shù)-EJB,EJB的實(shí)現(xiàn)舉例,public interface AccountHome extends javax.ejb.EJBHome public Account create(String userId, String status, ContactInformation info) throws RemoteException,Duplicat

15、eKeyException,CreateException; public Account findByPrimaryKey (String userId) throws RemoteException, FinderException; ,34,Java EE核心技術(shù)-EJB,EJB的實(shí)現(xiàn)舉例 public class AccountEJB implements EntityBean / entity state private String userId; private String status; private ContactInformation info; / resources

16、 private EntityContext context; / implement account interface business methods public void changeContactInformation(ContactInformation info) = info; public AccountModel getDetails() return(new AccountModel(userId, status, info); ,35,Java EE核心技術(shù)-EJB,EJB的實(shí)現(xiàn)舉例,/ must match signatures of creat

17、e methods in Home interface public String ejbCreate (String userId, String status, ContactInformation info) throws DuplicateKeyException,CreateException / set the instance data this.userId = userId; this.status = status; = info; AccountDAO ADAO = new AccountDAO(userId, status,info); try AD

18、AO.create(); / insert data in database return (userId); / return primary key catch (java.sql.SQLException se) throw new CreateException (SQL Exception in create: + se); ,36,Java EE核心技術(shù)-EJB,EJB的實(shí)現(xiàn)舉例,37,Java EE核心技術(shù)-CORBA,CORBA體系結(jié)構(gòu):核心ORB,38,Java EE核心技術(shù)-CORBA,CORBA技術(shù): CORBA(Common Object Request Broker

19、Architecture)是分布式對(duì)象體系結(jié)構(gòu),它獨(dú)立于平臺(tái),也獨(dú)立于語(yǔ)言。 在這個(gè)體系結(jié)構(gòu)中,對(duì)象可以被本機(jī)上的客戶(hù)或遠(yuǎn)程客戶(hù)通過(guò)方法激活來(lái)存取??蛻?hù)(對(duì)象或應(yīng)用)無(wú)須知道被調(diào)用對(duì)象(稱(chēng)為服務(wù)對(duì)象)的運(yùn)行環(huán)境,也無(wú)須知道實(shí)現(xiàn)這個(gè)對(duì)象的編程語(yǔ)言,客戶(hù)只要知道服務(wù)對(duì)象的邏輯地址和提供的接口。 這種互操作性的關(guān)鍵是IDL(Interface Definition Language、接口定義語(yǔ)言),IDL說(shuō)明對(duì)象接口中的方法,這些方法可以被其他對(duì)象(或應(yīng)用)激活。,39,Java EE核心技術(shù)-RMI,RMI技術(shù): RMI(Remote Method Invoke)是一種被EJB使用的更底層的協(xié)議,

20、正如其名字所表示的那樣,RMI協(xié)議調(diào)用遠(yuǎn)程對(duì)象上方法,使用序列化方式在客戶(hù)端和服務(wù)器端的對(duì)象之間傳遞數(shù)據(jù)。,40,Java EE核心技術(shù)-RMI,RMI和CORBA相比: 兩者的關(guān)鍵差別在于語(yǔ)言環(huán)境,Java RMI是一個(gè)分布式對(duì)象計(jì)算的純Java解決方案(如,在Java RMI中,對(duì)象的接口用Java定義,而不是用IDL); 其次,CORBA沒(méi)有定義安全服務(wù),而Java RMI繼承了Java的安全性; 再者,CORBA有不同的實(shí)現(xiàn),不同的獨(dú)立軟件開(kāi)發(fā)商的不同實(shí)現(xiàn)均有獨(dú)特性,這使得在不同平臺(tái)上的匹配比較困難,而且不是所有CORBA產(chǎn)品開(kāi)發(fā)商都支持所有平臺(tái),而幾乎所有平臺(tái)都支持Java虛擬機(jī),因

21、此Java RMI具有更高的可移植性。如果客戶(hù)對(duì)象和服務(wù)對(duì)象都基于Java虛擬機(jī),那么Java RMI是分布對(duì)象計(jì)算的最好選擇。 最后,IIOP已經(jīng)提供了Java RMI和CORBA的互操作能力,而且兩者的發(fā)展有互相借鑒的趨勢(shì)。,41,Java EE核心技術(shù)-JSP,JSP技術(shù): JSP是服務(wù)器端的腳本語(yǔ)言,是以Java和Servlet為基礎(chǔ)開(kāi)發(fā)而成的動(dòng)態(tài)網(wǎng)頁(yè)生成技術(shù),它的底層實(shí)現(xiàn)是Java Servlet。 JSP(Java Server Pages)頁(yè)面由HTML代碼和嵌入其中的Java代碼所組成??蛻?hù)端向服務(wù)器發(fā)出請(qǐng)求以后,服務(wù)器對(duì)頁(yè)面中的Java代碼進(jìn)行處理,然后將生成的HTML頁(yè)面返

22、回給客戶(hù)端的瀏覽器。,42,Java EE核心技術(shù)-JSP,JSP技術(shù): 特點(diǎn):面向?qū)ο?,跨平臺(tái),和Servlet一樣穩(wěn)定,可以使用Servlet提供的API,克服了Servlet的缺點(diǎn)。 應(yīng)用:一般和JavaBeans結(jié)合使用,從而將界面表現(xiàn)和業(yè)務(wù)邏輯分離。,43,Java EE核心技術(shù)-JSP,JSP與ASP的相似之處: 都是運(yùn)行于服務(wù)器端的腳本語(yǔ)言,兩者都是動(dòng)態(tài)網(wǎng)頁(yè)生成技術(shù)。 這兩項(xiàng)技術(shù)都使用HTML來(lái)決定網(wǎng)頁(yè)的版面,都是在HTML 代碼中混合某種程序代碼,由語(yǔ)言引擎解釋執(zhí)行程序代碼。HTML代碼主要負(fù)責(zé)描述信息的顯示樣式,而程序代碼則用來(lái)描述處理邏輯。,44,JSP與ASP的不同之處:

23、 JSP是由Sun推出的一項(xiàng)技術(shù),是基于JavaServlet以及整個(gè)java體系的Web開(kāi)發(fā)技術(shù),利用這一技術(shù)可以建立先進(jìn)、安全和跨平臺(tái)的動(dòng)態(tài)網(wǎng)站。ASP是MS公司推出的技術(shù),只能在MS的平臺(tái)上運(yùn)行,無(wú)法實(shí)現(xiàn)跨平臺(tái),也無(wú)安全性保障。 ASP下的編程語(yǔ)言是 VBScript 之類(lèi)的腳本語(yǔ)言,而JSP 使用的是Java。 ASP 與 JSP 還有一個(gè)更為本質(zhì)的區(qū)別:兩種語(yǔ)言引擎用完全不同的方式處理頁(yè)面中嵌入的程序代碼。在 ASP 下, VBScript 代碼被 ASP 引擎解釋執(zhí)行;在 JSP 下,代碼被編譯成 Servlet 并由 Java 虛擬機(jī)執(zhí)行,這種編譯操作僅在對(duì) JSP 頁(yè)面的第一次

24、請(qǐng)求時(shí)發(fā)生。,Java EE核心技術(shù)-JSP,45,Java EE核心技術(shù)-Servlet,Java Servlet技術(shù): Servlets(Server Applet):是一些運(yùn)行于Web服務(wù)器端的Java小程序,用來(lái)擴(kuò)展Web服務(wù)器的功能。 Servlet是一種擴(kuò)展Web服務(wù)器功能的技術(shù),而且由于它是用Java編寫(xiě)的,所以能夠訪問(wèn)整個(gè)Java API庫(kù),包括用于訪問(wèn)企業(yè)數(shù)據(jù)庫(kù)的JDBC API。 Servlets用特定的Java解決方案替代了其它的Web服務(wù)器方編程模式(如:CGI,ISAPI等),因而繼承了Java的所有特性(跨平臺(tái)、多線程、OO)。 用來(lái)編寫(xiě)Servlets的Servl

25、et API對(duì)于服務(wù)器環(huán)境和協(xié)議沒(méi)有任何特殊的要求,所以Servlets具有很強(qiáng)的可移植性,也不像利用CGI程序等其它方式那樣具有性能局限。 Servlets也同樣使用HTTP協(xié)議與客戶(hù)端進(jìn)行通訊,所以有時(shí)也稱(chēng)Sevlets為“HTTP Servlets”。,46,Java EE核心技術(shù)-Servlet,Java Servlet和JSP的比較: 相似: 兩者都是基于Java的技術(shù),所以都繼承了Java的所有特性(跨平臺(tái)、多線程、OO ),都可以使用Java強(qiáng)大的API。 兩者工作方式相似:JSP代碼先被JSP容器轉(zhuǎn)換為Servlet代碼再編譯為類(lèi)。 兩者在J2EE體系結(jié)構(gòu)中的工作層次相同,都負(fù)

26、責(zé)與客戶(hù)端的連接。 不同: 編程方式不同。Servlets是一些運(yùn)行于Web服務(wù)器端的Java小程序;而JSP是腳本,編寫(xiě)起來(lái)更簡(jiǎn)單容易。 應(yīng)用目的不同。Servlet主要用于從客戶(hù)端接收請(qǐng)求信息,而JSP主要負(fù)責(zé)將服務(wù)器端信息傳送到客戶(hù)端。 使用JSP的真正意義在于:可以將界面設(shè)計(jì)和業(yè)務(wù)邏輯設(shè)計(jì)分離。,47,Java EE核心技術(shù)-JavaBean,JavaBean技術(shù): JavaBean是基于Java的組件模型,類(lèi)似Microsoft的COM組件。 JavaBean通過(guò)Java虛擬機(jī)(Java Virtual Machine)執(zhí)行,運(yùn)行JavaBean最小的需求是JDK1.1或者以上的版本

27、。 在Java平臺(tái)中,通過(guò)JavaBean可以無(wú)限擴(kuò)充Java程序的功能,通過(guò)JavaBean的組合可以快速的生成新的應(yīng)用程序。 對(duì)于程序員來(lái)說(shuō),最好的一點(diǎn)就是JavaBean可以實(shí)現(xiàn)代碼的重復(fù)利用,另外對(duì)于程序的易維護(hù)性等等也有很重大的意義。 JavaBean傳統(tǒng)的應(yīng)用在于可視化的領(lǐng)域,如AWT下的應(yīng)用。自從Jsp誕生后,JavaBean更多的應(yīng)用在了非可視化領(lǐng)域,在服務(wù)器端應(yīng)用方面表現(xiàn)出來(lái)了越來(lái)越強(qiáng)的生命力。,48,Java EE核心技術(shù)-JDBC,JDBC技術(shù): JDBC是一組API,定義了用來(lái)訪問(wèn)數(shù)據(jù)源的標(biāo)準(zhǔn)Java類(lèi)庫(kù),使用這個(gè)類(lèi)庫(kù)可以以一種標(biāo)準(zhǔn)的方法、方便地訪問(wèn)數(shù)據(jù)庫(kù)資源。 JDBC對(duì)數(shù)據(jù)庫(kù)的訪問(wèn)具有平臺(tái)無(wú)關(guān)性。 JDBC API為訪問(wèn)不同的數(shù)據(jù)庫(kù)提供了一種統(tǒng)一的途徑,象ODBC一樣,JDBC對(duì)開(kāi)發(fā)者屏蔽了一些細(xì)節(jié)問(wèn)題。 JDBC的目標(biāo)是使應(yīng)用程序

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論