Java-EE開發(fā)技術(shù)與案例教程課件 JavaEE概述_第1頁
Java-EE開發(fā)技術(shù)與案例教程課件 JavaEE概述_第2頁
Java-EE開發(fā)技術(shù)與案例教程課件 JavaEE概述_第3頁
Java-EE開發(fā)技術(shù)與案例教程課件 JavaEE概述_第4頁
Java-EE開發(fā)技術(shù)與案例教程課件 JavaEE概述_第5頁
已閱讀5頁,還剩51頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、第第1 1章章 Java EE 概述概述Java-EEJava-EE開發(fā)技術(shù)與案例教程課件第開發(fā)技術(shù)與案例教程課件第1 1章章JavaEEJavaEE概述概述第第1 1章章 Java EE 概述概述1.1 Java EE簡介簡介 Java EE是基于Java的解決方案,是Java平臺(tái)的企業(yè)版,是一套技術(shù)架構(gòu)。Java EE的核心是一組技術(shù)標(biāo)準(zhǔn)與指南,它使開發(fā)人員能夠開發(fā)具有可移植性、平安性和可復(fù)用的企業(yè)級(jí)應(yīng)用。Java EE良好定義和設(shè)計(jì)的體系結(jié)構(gòu)保證了開發(fā)人員更多地將注意力集中于架構(gòu)設(shè)計(jì)和業(yè)務(wù)邏輯上 。 第第1 1章章 Java EE 概述概述Java EE的新特性 1、標(biāo)注Annotati

2、on 是Java EE 5引入的一個(gè)新特性。標(biāo)注之于程序是一種元數(shù)據(jù),標(biāo)注這種元數(shù)據(jù)按照其作用可以分為三類:編寫文檔、代碼分析、編譯檢查。用于編寫文檔是 通 過 代 碼 里 的 標(biāo) 注 元 數(shù) 據(jù) 生 成 文 檔 , 例 如Documented,用于定制javadoc不支持的文檔屬性,并在開發(fā)中使用。用在代碼分析的標(biāo)注如Deprecated,指出這是個(gè)不建議使用的方法。 第第1 1章章 Java EE 概述概述 引入標(biāo)注可以實(shí)現(xiàn)多種功能的簡化,例如:1定義和使用Web Service。2開發(fā)EJB組件。3映射Java類到XML文檔。4映射Java 類到數(shù)據(jù)庫。5依賴注入。6指定部署信息等。 有

3、了Annotation,在Web應(yīng)用開發(fā)中直接在代碼中使用標(biāo)注就可以告知Java EE效勞器如何部署及運(yùn)行,而不必再編輯WEB-INF/web.xml文件了。第第1 1章章 Java EE 概述概述2、EJB 3 EJB 3是EJB 2的升級(jí),不像EJB 2是重量級(jí)框架,EJB 3的持久化變更加簡化,是輕量級(jí)的。它不再需要EJB home接口,不再需要實(shí)現(xiàn)SessionBean接口,JDNI API也不再是必需的。EJB部署描述符變成可選的功能。此外,EJB 3中還引入了攔截器功能。攔截器是AOP在EJB中的實(shí)現(xiàn),是可以對Bean 的業(yè)務(wù)方法進(jìn)行攔截的組件。攔截器可以用于無狀態(tài)會(huì)話Bean、有

4、狀態(tài)會(huì)話Bean和消息驅(qū)動(dòng)Bean。攔截器用來監(jiān)聽程序的一個(gè)或者多個(gè)方法,它對方法調(diào)用提供了控制。 第第1 1章章 Java EE 概述概述3、 JPA JPAJava Persistence API,即數(shù)據(jù)持久化API,它是一個(gè)輕量級(jí)的對象持久化模型,是Java EE的又一新特性。Sun公司推出JPA標(biāo)準(zhǔn)目的在于簡化現(xiàn)有Java EE和Java SE應(yīng)用的對象持久化工作,希望統(tǒng)一ORM技術(shù),因?yàn)樵贘PA出現(xiàn)之前,各種ORM框架之間的API差異很大,使用了某種ORM框架的系統(tǒng)會(huì)受制于該ORM的標(biāo)準(zhǔn)。 JPA本質(zhì)上是一種ORM標(biāo)準(zhǔn),并未提供ORM實(shí)現(xiàn),其具體實(shí)現(xiàn)由其他的廠商提供。程序員假設(shè)要使用

5、JPA,需要選擇JPA的實(shí)現(xiàn)框架,Hibernate 3即是這樣一個(gè)實(shí)現(xiàn)了JPA的一個(gè)框架 。 第第1 1章章 Java EE 概述概述4、 Web Service支持 Web Service是建立可互操作的分布式應(yīng)用程序的新平臺(tái),程序員可能使用COM或DCOM建立過基于組件的分布式應(yīng)用程序,或者使用CORBA、RMI等技術(shù)實(shí)現(xiàn)遠(yuǎn)程調(diào)用。Web Service平臺(tái)也是這樣的一套標(biāo)準(zhǔn),而且它做的更好。它定義了應(yīng)用程序如何在Web上實(shí)現(xiàn)互操作。Web Service平臺(tái)需要一套協(xié)議來實(shí)現(xiàn)分布式應(yīng)用程序的創(chuàng)立。 第第1 1章章 Java EE 概述概述5、依賴注入 所謂依賴注入Dependency

6、Injection是指當(dāng)某個(gè)角色可能是一個(gè)Java實(shí)例,調(diào)用者需要另外一個(gè)角色另外一個(gè)Java 類的實(shí)例,被調(diào)用者的協(xié)助時(shí),在傳統(tǒng)的程序設(shè)計(jì)過程中,通常是由調(diào)用者來創(chuàng)立被調(diào)用者的實(shí)例。在一些輕型框架如Spring中,創(chuàng)立被調(diào)用者的任務(wù)不再由調(diào)用者完成,而是由Spring容器完成,然后以某種方式注入給調(diào)用者,稱為依賴注入,也稱為控制反轉(zhuǎn)。 通過依賴注入降低了代碼的耦合度,也使得資源訪問變得更加容易。第第1 1章章 Java EE 概述概述6、泛型 泛型Generics是程序設(shè)計(jì)語言的一種特性,支持泛型的程序設(shè)計(jì)語言允許程序員在編寫代碼時(shí)定義一些可變局部,那些局部在使用前必須作出指明。各種程序設(shè)計(jì)

7、語言和其編譯器、運(yùn)行環(huán)境對泛型的支持均不一樣。將類型參數(shù)化以到達(dá)代碼復(fù)用提高軟件開發(fā)工作效率的一種數(shù)據(jù)類型。泛型主要是引入了類型參數(shù)這個(gè)概念。第第1 1章章 Java EE 概述概述Java EE 5通過引入泛型,使得集合元素類型參數(shù)化,防止了運(yùn)行時(shí)出現(xiàn)類型轉(zhuǎn)換錯(cuò)誤,因此不必要參加顯式強(qiáng)制類型轉(zhuǎn)換的操作了。下面的例子對此作了說明:不使用泛型時(shí):ArrayList list = new ArrayList();list.add(0,new Integer(42);int total = (Integer)list.get(0).inValue();第第1 1章章 Java EE 概述概述使用了泛

8、型后:ArrayList list = new ArrayList();list.add(0,new Integer(42);int total = list.get(0).inValue();讀者可以體會(huì)這兩個(gè)例子之間的微妙差異,進(jìn)而理解用反型的好處。第第1 1章章 Java EE 概述概述 7、枚舉枚舉類型是Java EE 5開始引入的類型,本質(zhì)上枚舉類型就是一個(gè)命名變量的列表。枚舉類型通過關(guān)鍵字enum來聲明。下面是一個(gè)枚舉的例子:public enum Week Monday, Tuesday, Wednesday, Thursday,第第1 1章章 Java EE 概述概述 Frid

9、ay, Saturday, Sunday對命名常量可以通過類似對象成員的方法或者通過方法values、valueOf、ordinal、name等方法進(jìn)行存取操作。下面的for循環(huán)將輸出枚舉的所有命名常量。for(Week w:Week.values()第第1 1章章 Java EE 概述概述8、增強(qiáng)的for循環(huán)Java EE 5中的增強(qiáng)的for循環(huán)簡化了數(shù)組和集合的遍歷操作,其語法更簡單,可以防止下標(biāo)越界的問題出現(xiàn),而且還可以防止由于強(qiáng)制類型轉(zhuǎn)換導(dǎo)致的錯(cuò)誤。下面是一個(gè)使用增強(qiáng)for循環(huán)對數(shù)組元素進(jìn)行遍歷的例子。int a = 1,2,3,4,5,6;for(int num:a)第第1 1章章

10、Java EE 概述概述9、函數(shù)可變參數(shù) Java EE 5之前,方法的參數(shù)個(gè)數(shù)是固定的。Java EE 5允許創(chuàng)立具有可變參數(shù)的方法,這使得某些操作變得更方便了。下面的程序例子可以說明這一點(diǎn)。public class VarArgumentpublic static void main(String args)public static int add(intargs) int sum = 0; for(int i =0;iargs.length;i+) sum += argsi; return sum;第第1 1章章 Java EE 概述概述10、靜態(tài)導(dǎo)入 在Java EE 5之前的版本中

11、,程序中使用靜態(tài)成員要在其前面加類名引導(dǎo)。Java EE 5引入靜態(tài)導(dǎo)入意味著不必再寫類名,而是直接通過靜態(tài)成員的名字來訪問它們。例如: /靜態(tài)導(dǎo)入 /調(diào)用靜態(tài)成員 out.println(sqrt(6); /不再是Math.sqrt(6)第第1 1章章 Java EE 概述概述1.2 Java EE分層架構(gòu)分層架構(gòu)分層模式概述 分層模式是常見的架構(gòu)模式。分層描述的是這樣一種架構(gòu)設(shè)計(jì)過程:從最低級(jí)別的抽象開始,稱為第1層。在此根底上逐步向上進(jìn)行抽象。直至到達(dá)功能的最高級(jí)別。 分層模式的特點(diǎn)包括:伸縮性:伸縮性是指應(yīng)用程序能支持更多用戶的能力。應(yīng)用的層數(shù)少,可以增加資源如CPU、內(nèi)存等的時(shí)機(jī)就少

12、。反之,那么可以把每層分布在不同的機(jī)器上??删S護(hù)性:指的是發(fā)生需求變化時(shí),只需修改軟件的局部,不必改動(dòng)其他局部的代碼。第第1 1章章 Java EE 概述概述l 可擴(kuò)展性:可擴(kuò)展性是指在現(xiàn)有系統(tǒng)增加新功能的能力。分層的結(jié)構(gòu)中可擴(kuò)展性較好,這是由于可以每個(gè)層中插入功能擴(kuò)展點(diǎn),而不改變原有的整體框架。l 可重用性:可重用性指的是同一程序代碼可以滿足多種需求的能力。例如,業(yè)務(wù)邏輯層可以被多種表示層共享,即業(yè)務(wù)邏輯層的代碼被重用了。l 可管理性:指管理系統(tǒng)的難易程度。第第1 1章章 Java EE 概述概述Java EE的結(jié)構(gòu)Java EE使用多層分布式的應(yīng)用模型,該模型通過四層來實(shí)現(xiàn),分別為:客戶層

13、:運(yùn)行在客戶計(jì)算機(jī)上的組件。Web層:運(yùn)行在Java EE效勞器上的組件。業(yè)務(wù)層:同樣是運(yùn)行在Java EE效勞器上的組件。企業(yè)信息系統(tǒng)層EIS:是指運(yùn)行在EIS效勞器上的軟件系統(tǒng)。有時(shí)我們把客戶層和Web層視為一個(gè)層,這樣就可以將以上結(jié)構(gòu)按三層來劃分,如以下圖所示。第第1 1章章 Java EE 概述概述第第1 1章章 Java EE 概述概述 在這個(gè)分層體系中,客戶層組件可以使基于Web方式的,也可以是基于傳統(tǒng)方式的。Web層組件可以使JSP頁面或者Servlet。 對于業(yè)務(wù)邏輯層組件,其代碼是處理如銀行、零售等具體行業(yè)或領(lǐng)域的業(yè)務(wù)需要,由運(yùn)行在業(yè)務(wù)層上的Enterprise Bean進(jìn)行

14、處理。 企業(yè)信息系統(tǒng)層處理企業(yè)信息系統(tǒng)軟件,包括企業(yè)根底建設(shè)系統(tǒng),例如企業(yè)資源方案ERP、大型機(jī)事務(wù)處理、數(shù)據(jù)庫系統(tǒng)和其他遺留系統(tǒng)。第第1 1章章 Java EE 概述概述1.3 Java EE技術(shù)標(biāo)準(zhǔn)技術(shù)標(biāo)準(zhǔn)1JDBCJava Database ConnectivityJDBC API為訪問不同的數(shù)據(jù)庫提供了一種統(tǒng)一的機(jī)制,為訪問不同的數(shù)據(jù)庫提供了一種統(tǒng)一的機(jī)制,像像ODBC一樣,一樣,JDBC使操縱數(shù)據(jù)庫的細(xì)節(jié)對開發(fā)者透使操縱數(shù)據(jù)庫的細(xì)節(jié)對開發(fā)者透明,另外,明,另外,JDBC對數(shù)據(jù)庫的訪問也具有平臺(tái)無關(guān)性。對數(shù)據(jù)庫的訪問也具有平臺(tái)無關(guān)性。2JNDIJava Name and Directo

15、ry Interface名字和目錄效勞,為應(yīng)用提供一致的模型來訪問企業(yè)級(jí)名字和目錄效勞,為應(yīng)用提供一致的模型來訪問企業(yè)級(jí)資源,如資源,如DNS和和LDAP、本地文件系統(tǒng)或應(yīng)用效勞器、本地文件系統(tǒng)或應(yīng)用效勞器中的對象。中的對象。第第1 1章章 Java EE 概述概述 3EJBEnterprise Jav Bean 企業(yè)Java組件,提供一個(gè)框架來描述分布式商務(wù)邏輯,開發(fā)具有可伸縮性和復(fù)雜的企業(yè)級(jí)應(yīng)用。EJB標(biāo)準(zhǔn)定義了組件何時(shí)如何與它們的容器進(jìn)行交互。容器負(fù)責(zé)提供公用的效勞,如目錄、事務(wù)管理、平安性等。需要說明的是,EJB并不是實(shí)現(xiàn)Java EE企業(yè)應(yīng)用的惟一渠道,它的意義在于它是專為分布式大型

16、企業(yè)應(yīng)用而設(shè)計(jì),用它編寫的程序具有良好的可擴(kuò)展性和平安性。第第1 1章章 Java EE 概述概述4RMIRemote Method Invoke遠(yuǎn)程方法調(diào)用,顧名思義,它用于調(diào)用遠(yuǎn)程對象的方法。遠(yuǎn)程方法調(diào)用,顧名思義,它用于調(diào)用遠(yuǎn)程對象的方法。它使用了序列化方式在客戶端和效勞器端傳遞數(shù)據(jù)。它使用了序列化方式在客戶端和效勞器端傳遞數(shù)據(jù)。5Java IDL/CORBAJava Interface Definition Language/Common Object Request Broker Architecture Java 接口定義語言接口定義語言/公用對象請求代理結(jié)構(gòu)。為公用對象請求代理結(jié)

17、構(gòu)。為 Java平臺(tái)添加了平臺(tái)添加了 CORBACommon Object Request Broker Architecture,公用對象請求代理體系結(jié)構(gòu)功,公用對象請求代理體系結(jié)構(gòu)功能,從而可提供基于標(biāo)準(zhǔn)的互操作性和連接性。能,從而可提供基于標(biāo)準(zhǔn)的互操作性和連接性。 第第1 1章章 Java EE 概述概述Java IDL 使分布式、支持 Web 的 Java 應(yīng)用程序可利用 Object Management Group 定義的行業(yè)標(biāo)準(zhǔn) OMG IDLObject Management Group Interface Definition Language,對象管理組接口定義語言及 II

18、OPInternet Inter-ORB Protocol,Internet對象請求代理間協(xié)議來透明地調(diào)用遠(yuǎn)程網(wǎng)絡(luò)效勞。運(yùn)行時(shí)組件包括一個(gè)全兼容的 Java ORB,用于通過 IIOP 通訊進(jìn)行分布式計(jì)算。 第第1 1章章 Java EE 概述概述6JSPJava Server Pages JSP頁面由頁面由HTML代碼和嵌入其中的代碼和嵌入其中的Java代碼組代碼組成。效勞器在頁面被客戶端請求以后,對這些成。效勞器在頁面被客戶端請求以后,對這些Java代代碼進(jìn)行處理,然后將生成的碼進(jìn)行處理,然后將生成的HTML頁面返回給客戶端頁面返回給客戶端的瀏覽器。的瀏覽器。7Java Servlet S

19、ervlet是運(yùn)行在效勞器端的是運(yùn)行在效勞器端的Java程序,它擴(kuò)展了程序,它擴(kuò)展了Web效勞器的功能。作為一種效勞器端的應(yīng)用,當(dāng)被效勞器的功能。作為一種效勞器端的應(yīng)用,當(dāng)被請求時(shí)開始執(zhí)行。請求時(shí)開始執(zhí)行。Servlet提供的功能和提供的功能和JSP一致,只是一致,只是二者的構(gòu)成不同。二者的構(gòu)成不同。JSP通常是通常是HTML代碼中嵌入代碼中嵌入Java代碼,而代碼,而Servlet全部由全部由Java 寫成并且生成寫成并且生成HTML。第第1 1章章 Java EE 概述概述8XMLeXtensible Markup Language 擴(kuò)展的標(biāo)記語言,用來定義其他標(biāo)記語言的語言。擴(kuò)展的標(biāo)記語

20、言,用來定義其他標(biāo)記語言的語言。作為數(shù)據(jù)交換和數(shù)據(jù)共享的語言,適用于很多的應(yīng)用作為數(shù)據(jù)交換和數(shù)據(jù)共享的語言,適用于很多的應(yīng)用領(lǐng)域。領(lǐng)域。9JMSJava Message Service Java消息效勞,是消息效勞,是Java平臺(tái)上用于建立面向消息平臺(tái)上用于建立面向消息中間件中間件(MOM)的技術(shù)標(biāo)準(zhǔn),它便于消息系統(tǒng)中的的技術(shù)標(biāo)準(zhǔn),它便于消息系統(tǒng)中的Java應(yīng)用程序進(jìn)行消息交換應(yīng)用程序進(jìn)行消息交換,并且通過提供標(biāo)準(zhǔn)的產(chǎn)生、發(fā)并且通過提供標(biāo)準(zhǔn)的產(chǎn)生、發(fā)送、接收消息的接口簡化企業(yè)應(yīng)用的開發(fā)。送、接收消息的接口簡化企業(yè)應(yīng)用的開發(fā)。第第1 1章章 Java EE 概述概述 許多廠商目前都支持 JMS,

21、包括 IBM 的 MQSeries、BEA的 Weblogic JMS service等等。 使用JMS能夠通過消息收發(fā)效勞有時(shí)稱為消息中介程序或路由器從一個(gè) JMS 客戶機(jī)向另一個(gè) JMS客戶機(jī)發(fā)送消息。消息是 JMS 中的一種類型對象,由兩局部組成:報(bào)頭和消息主體。報(bào)頭由路由信息以及有關(guān)該消息的元數(shù)據(jù)組成。消息主體那么攜帶著應(yīng)用程序的數(shù)據(jù)或有效負(fù)載。第第1 1章章 Java EE 概述概述10JTAJava Transaction Architecture Java事務(wù)體系結(jié)構(gòu),定義了一組標(biāo)準(zhǔn)的事務(wù)體系結(jié)構(gòu),定義了一組標(biāo)準(zhǔn)的API,用于,用于訪問各種事務(wù)監(jiān)控。訪問各種事務(wù)監(jiān)控。11JTSJ

22、ava Transaction Service Java 事務(wù)效勞,是事務(wù)效勞,是CORBA OTSObject Transaction Service事務(wù)監(jiān)控的根本實(shí)現(xiàn)。事務(wù)監(jiān)控的根本實(shí)現(xiàn)。第第1 1章章 Java EE 概述概述12Java Mail 是用于存取郵件效勞器的是用于存取郵件效勞器的API,它提供了一套郵件,它提供了一套郵件效勞器的抽象類。它不僅支持效勞器的抽象類。它不僅支持SMTP效勞器,也支持效勞器,也支持IMAP效勞器。效勞器。13JAFJavaBeans Activation Framework JavaMail利用利用JAF來處理來處理MIME編碼的郵件附件。編碼的郵

23、件附件。MIME的字節(jié)流可以被轉(zhuǎn)換成的字節(jié)流可以被轉(zhuǎn)換成Java對象,或者相反。對象,或者相反。第第1 1章章 Java EE 概述概述1.4敏捷輕型框架 框架,即framework。其實(shí)就是某種應(yīng)用的半成品,就是一組組件,供你選用完成你自己的系統(tǒng)。這些組件是把不同的應(yīng)用中有共性的任務(wù)抽取出來加以實(shí)現(xiàn),做成程序供人使用。簡單說就是使用別人搭好的舞臺(tái),你來做表演。而且,框架一般是成熟的,不斷升級(jí)的軟件。 框架的概念最早起源于Smalltalk環(huán)境,其中最著名的框架是Smalltalk 80的用戶界面框架MVC(Model-View-Controller)。第第1 1章章 Java EE 概述概述

24、 框架可分為重型框架和輕型框架。一般稱EJB這樣的框架為重型框架,因其軟件架構(gòu)較復(fù)雜,啟動(dòng)加載時(shí)間較長,系統(tǒng)相對昂貴,需啟動(dòng)應(yīng)用效勞器加載EJB組件。而輕型框架那么不需要昂貴的設(shè)備和軟件費(fèi)用,且系統(tǒng)搭建容易,效勞器啟動(dòng)快捷,適合于中小型企業(yè)或工程。目前,使用輕型框架開發(fā)工程非常普遍,常用的輕型框架包括Hibernate、Struts、Spring、WebWork、Tapestry、JSF等。第第1 1章章 Java EE 概述概述 1使用輕型框架的好處 軟件技術(shù)開展至今,面臨各類復(fù)雜的應(yīng)用系統(tǒng)開發(fā)。軟件系統(tǒng)開發(fā)任務(wù)涉及到的知識(shí)更綜合、內(nèi)容更豐富、問題更繁多。如何能使程序開發(fā)效率高、工作效果好,

25、這是輕型框架設(shè)計(jì)的目的所在??蚣芸梢酝瓿砷_發(fā)中的一些根底性工作,開發(fā)人員可以集中精力完成系統(tǒng)的業(yè)務(wù)邏輯設(shè)計(jì)??傮w而言,適用輕型框架的好處有以下幾方面:減少重復(fù)開發(fā)工作量、縮短開發(fā)周期、降低開發(fā)本錢。使程序設(shè)計(jì)總體上更為標(biāo)準(zhǔn)、程序運(yùn)行更穩(wěn)定。軟件開發(fā)更能適應(yīng)需求變化,且運(yùn)行維護(hù)費(fèi)用也較低。第第1 1章章 Java EE 概述概述2 目前流行的框架組合目前流行的框架組合 開發(fā)人員可以根據(jù)自己對框架的熟悉程度,在充分了解不同框架的性能,根據(jù)其滿足系統(tǒng)功能和性能要求的前提下,自由地選擇不同框架的搭配使用。下面是一些常見的框架組合。JSP+Servlet+JavaBean+JDBCStruts+MySQ

26、L+JDBCHibernate+JDBC+JSPStruts+HibernateHibernate+Spring第第1 1章章 Java EE 概述概述Spring+Struts+JDBCStruts+Hibernate+SpringStruts+EJBJSF+HibernateTapestry+Hibernate+SpringFreemaker+Struts+Hibernate+SpringJSP+EJB+Oracle第第1 1章章 Java EE 概述概述 Hibernate是一個(gè)面向Java環(huán)境的對象/關(guān)系映射工具,即ORMObject-Relation Mapping。它的作用是封裝了

27、JDBC的功能,即隱藏了數(shù)據(jù)訪問的細(xì)節(jié),負(fù)責(zé)Java對象的持久化。Hibernate的工作原理是通過文件把值對象和數(shù)據(jù)庫表之間建立起一個(gè)映射關(guān)系,這樣,我們在應(yīng)用程序中只需要借助Hibernate所提供的一些根本類通過操作這些值對象即可到達(dá)訪問數(shù)據(jù)庫的目的。這就使得Java程序員使用其所熟悉的面向?qū)ο蠓妒竭M(jìn)行開發(fā)。第第1 1章章 Java EE 概述概述 了解了Hibernate,我們需要進(jìn)一步了解JPA。前面已經(jīng)介紹了JPA即Java 持久化APIJava Persistence API。由于ORM框架產(chǎn)品多,且各具特點(diǎn),互不相通,這就給開發(fā)者一個(gè)又一個(gè)難題,也成了應(yīng)用移植的障礙。JPA是J

28、CP組織發(fā)布的Java EE標(biāo)準(zhǔn)之一,任何符合JPA標(biāo)準(zhǔn)的框架都遵循同樣的架構(gòu),提供相同的API,這就保證了基于JPA開發(fā)的企業(yè)應(yīng)用經(jīng)過小的修改即能夠在不同的JPA框架下運(yùn)行。就是說,JPA是一個(gè)ORM模型和標(biāo)準(zhǔn),而不是一個(gè)實(shí)際的框架。第第1 1章章 Java EE 概述概述 Struts是一種基于Java EE平臺(tái)的MVC框架。它主要是用Servlet和JSP技術(shù)實(shí)現(xiàn)的。它使開發(fā)過程各個(gè)模塊化分清晰易掌控。利用taglib獲得可重用的代碼;利用ActionServlet配合struts-config.xml實(shí)現(xiàn)對整個(gè)系統(tǒng)進(jìn)行導(dǎo)航式建構(gòu),開發(fā)人員易于對系統(tǒng)的整體把握;用戶界面、業(yè)務(wù)邏輯和控制的

29、別離,帶來系統(tǒng)結(jié)構(gòu)更清晰,更容易分工協(xié)作,且系統(tǒng)具有良好的可擴(kuò)展性和易維護(hù)性。 第第1 1章章 Java EE 概述概述 Spring是一個(gè)應(yīng)用于Java EE領(lǐng)域的輕量級(jí)的、功能強(qiáng)大的、靈活的應(yīng)用程序框架。可以提供快速的Java Web應(yīng)用程序開發(fā)。Spring工程是個(gè)非?;顫姷拈_源工程,因此它提供了眾多優(yōu)秀工程的集成,例如對MVC框架和視圖技術(shù)的集成、與開源持久層ORM的集成、與動(dòng)態(tài)語言的集成以及與其他企業(yè)級(jí)應(yīng)用的集成。第第1 1章章 Java EE 概述概述 Spring提供了一個(gè)完整的MVC框架,為模型、視圖、控制器之間進(jìn)行了非常清晰的劃分,各局部耦合度極低。視圖不再要求必須使用JSP

30、,而可以選擇Velocity、Freemaker或者其他視圖技術(shù)。 Spring支持依賴注入(DI)和面向方面編程技術(shù)(AOP),更容易實(shí)現(xiàn)復(fù)雜的需求。支持事務(wù)管理,可以很容易地實(shí)現(xiàn)支持多個(gè)事務(wù)資源。支持JMS和JCA等技術(shù),能方便地訪問EJB。第第1 1章章 Java EE 概述概述 JSFJavaServer Faces是一種以組件為中心的用于構(gòu)建Web應(yīng)用程序的輕型框架,它主要可用于開發(fā)應(yīng)用程序的用戶界面。一般而言,用戶界面設(shè)計(jì)是一件很費(fèi)時(shí)的過程,JSF以組件為中心的結(jié)構(gòu)可以極大地簡化界面的設(shè)計(jì)工作。它為開發(fā)人員提供了標(biāo)準(zhǔn)的編程接口、豐富的UI組件庫以及事件驅(qū)動(dòng)模型等完整的應(yīng)用框架,通過

31、JSF,可以在頁面中輕松地使用Web組件,捕獲用戶行為產(chǎn)生的事件,執(zhí)行驗(yàn)證,建立頁面導(dǎo)航等任務(wù)。 第第1 1章章 Java EE 概述概述 JSF的應(yīng)用架構(gòu)完全實(shí)現(xiàn)了MVC模式。用戶界面代碼視圖與處理邏輯模型相別離,這使得JSF程序易于管理,而所有與應(yīng)用程序的用戶交互均由一個(gè)前端Faces Servlet控制器來處理。第第1 1章章 Java EE 概述概述1.5 Java EE開發(fā)環(huán)境開發(fā)環(huán)境 JDK的下載和安裝 JDKJava Development Kit,Java開發(fā)工具包是Java EE平臺(tái)的應(yīng)用程序的根底,利用它構(gòu)建組件、開發(fā)應(yīng)用程序。JDK是開源免費(fèi)的工具,可以到Sun公司官網(wǎng)下

32、載。網(wǎng)址為。 例如下載jdk-6u21-windows-i586.exe文件后,可以直接雙擊運(yùn)行該文件進(jìn)行安裝。按安裝過程提示選擇好安裝路徑及安裝組件即可。第第1 1章章 Java EE 概述概述 安裝后需要設(shè)置環(huán)境變量JAVA_HOME、PATH及CLASSPATH。配置環(huán)境變量的目的是為了設(shè)置Java程序的編譯和運(yùn)行有關(guān)的環(huán)境信息。其中JAVA_HOME設(shè)置為JDK的安裝目錄。PATH設(shè)置為JDK的程序即exe文件目錄。CLASSPATH那么用于設(shè)置JDK類庫搜索路徑。第第1 1章章 Java EE 概述概述JDK目錄結(jié)構(gòu)為:bin目錄:包含編譯器、解釋器和一些其他工具。lib目錄:包含類

33、庫文件。demo目錄:包含演例如子。include目錄:包含C語言頭文件,支持Java本地接口與Java虛擬機(jī)調(diào)試程序接口的本地編程技術(shù)。jre目錄:包含Java虛擬機(jī)、運(yùn)行時(shí)類包和應(yīng)用啟動(dòng)器。sample目錄:附帶的輔助學(xué)習(xí)者學(xué)習(xí)的Java程序例子。src.zip:是源代碼壓縮文件。第第1 1章章 Java EE 概述概述在bin目錄下包含Java開發(fā)工具,其中最常用的幾個(gè)如下:javac.exe:Java語言編譯器,將Java源代碼編譯轉(zhuǎn)換為字節(jié)碼文件擴(kuò)展名為.class,也稱為類文件。java.exe:Java解釋器,它啟動(dòng)Java虛擬機(jī)JVM,提供Java程序運(yùn)行環(huán)境。appletvi

34、ewer.exe:Java小程序?yàn)g覽器,提供Java小應(yīng)用程序applet測試及運(yùn)行環(huán)境。javadoc.exe:幫助文檔生成器,建立關(guān)于類的信息的描述文檔。jar.exe:對類進(jìn)行打包的工具。第第1 1章章 Java EE 概述概述 Eclipse是IBM推出的開放源碼的通用開發(fā)平臺(tái)。它支持包括Java在內(nèi)的多種開發(fā)語言。Eclipse采用插件機(jī)制,使一種可擴(kuò)展的、可配置的集成開發(fā)環(huán)境IDE。 MyEclipse本質(zhì)上是Eclipse插件。其企業(yè)級(jí)開發(fā)平臺(tái)MyEclipse Enterprise Workbench是功能強(qiáng)大的Java EE集成開發(fā)環(huán)境,在其上可以進(jìn)行代碼編寫、配置、調(diào)試、發(fā)布等工作,支持HTML、JavaScript、CSS、JSF、Spring、Struts、Hibernate等開發(fā)。下面對MyEclipse的安裝配置、使用方法進(jìn)行概要介紹。第第1 1章章 Java EE 概述概述1安裝與配置安裝與配置第第1 1章章 Java EE 概述概述 為了能夠在MyEclipse中管理效勞器,需要對其進(jìn)行配置。具體配置過程如

溫馨提示

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

評論

0/150

提交評論