亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

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

J2EE應用程序打包與部署之三

2019-11-18 14:28:57
字體:
來源:轉載
供稿:網友

  J2EE部署

  J2EE的部署就是將應用構件按照一定的格式打包并放置在應用服務器的容器內,在部署時,J2EE提供的部署服務答應對應用構件進行設置;在J2EE構件被安裝在容器內時,它們一般是根據功能被分成若干個模塊,每個模塊都有一個部署描述文件(deploy descriptor)用于告訴J2EE容器如何進行部署;這個描述文件是一個基于xml的文本文件,部署描述文件包含許多與應用構件和J2EE平臺服務有關的元素,譬如構件如何使用事務和安全服務等等。

  一個J2EE程序包括一個或多個J2EE模塊和一個J2EE應用部署描述文件(不同于模塊的部署描述文件),該應用部署描述文件告訴J2EE應用服務器所需要部署的程序模塊和如何對這些模塊進行設置;一個J2EE程序就是一個企業檔案文件(EAR),EAR文件采用壓縮文件格式(像常用的zip文件),一個EAR文件包括一個或多個java檔案文件(JAR)以及零個或多個資源檔案文件(RAR)。

  J2EE有四種模塊,每種模塊對應一類構件。EJB模塊包含EJB的類文件EJB的部署描述文件。EJB模塊被打包成以.jar為擴展名的JAR文件;Web模塊包含jsp文件、為servlets程序編譯后的類文件、GIF和Html文件以及Web部署描述文件,Web 模塊被打包成以.war為擴展名的WAR文件;其實WAR文件格式和JAR基本相同,可以認為WAR文件是非凡的JAR文件;資源適配器模塊(resource adapter)包含所有Java接口、類和其他文件,以及資源適配器的部署描述文件。這些類用來實施由企業信息相同EIS的連接。資源適配器模塊被打包成以.rar為擴展名的JAR文件;應用客戶模塊包含客戶程序的類文件和一個應用客戶部署描述文件,應用客戶模塊用JAR文件格式。

  在上述每種類型的模塊中,每個部署單元都具有相應組件描述定義的組件結構。例如,Web模塊部署單位被稱為Web檔案(Web archive),它具有一個WEB-INF目錄以包含所有支持文件。一個或更多J2EE平臺模塊可以組成一個J2EE應用程序,它包含它自己類型的部署單位;除組件和資源之外,各個部署單位包含一個部署描述文件,它是一個指定各組件與其環境之間的關系的XML文件。部署描述文件包含以下兩種信息:

  (1)結構信息:它主要描述包含在部署單位中的組件信息,包括它們之間的關系和依靠性。通常這類信息包括ejb home和遠程接口及實現類、實體bean主鍵類、持續性機制及環境聲明變量和資源需求;一個組建容器將會使用結構信息來實時地治理組件實例。

  (2)集成信息:這是一種可選擇的信息,描述了一個部署單位如何與其他部署單位集成并制造出新的組件,這類信息通常包括ejb關系名、描述符、安全角色信息、方法許可和環境變量值。

  1、部署描述文件

  部署描述文件(deployment descriptors)描述部署單位內容并相對于應用環境配置組件和應用程序。同時對它們與組件之間的關系做出了一定的處理,從而可以在無需編程的情況下對這些關系加以治理。部署工具通常會自動生成部署描述文件,所以開發人員不必直接編輯和治理它們。

  通常部署描述文件有四種類型,每種對應于一個類型部署單位:

  1) EJB部署描述文件;

  2) Web層部署描述文件;

  3) 應用客戶部署描述文件;

  4) 資源適配器部署描述文件。

  各種部署描述文件的定義都可以在相應的XML文檔類型定義(document type definition)中找到。部署描述文件包含由組件容器使用的信息及組件通過JNDI訪問的信息。

  有關EJB部署、應用客戶部署及資源適配器部署請讀者參考有關J2EE資料,在此就不多說了,下面我們討論一下Web層部署內容。
  2、Web程序部署

  Web程序的部署主要包括將Web程序以標準格式打包和將Web程序放入Web服務器中運行兩步。Web程序的部署描述文件(deployment descriptor)建立了Web程序和Web程序服務器之間的信息交流。一個部署描述文件采用符合特定標準的格式來描述一個Web程序內的構件(如servlet,filter,listener,JSP等)和使用方式(如安全機制、錯誤處理方法等)。當Web程序服務器啟動并加載一個Web程序時,它會根據其部署描述文件設置其運行狀態并初始化Web構件。

  1)web.xml文件的格式

  由于Web程序開發中各種人員有不同分工,而Web程序的部署描述文件是程序構件提供者、程序組裝者和程序部署者之間的溝通機制;Servlet 2.4之前的版本規定了在Web服務器中使用DTD格式的web.xml,而Servlet 2.4將依照XML schema格式定義web.xml;實際上這兩種格式的web.xml只是在頭部有區別,其內容都是描述Web程序的部署信息。在web.xml中出現的部署元素主要包含以下信息:

  a、ServletContext的初始化變量(Init Parameters);

  b、交互會話(session)的設置;

  c、Servlet的聲明定義;

  d、Servlet和網址URL的映射(Mapping);

  e、應用程序生命周期的監聽器(application Lifecycle Listener);

  f、過濾器聲明;

  g、過濾器和網址URL或Servlet/JSP的映射;

  h、MIME類型;

  i、歡迎文件(Welcome File);

  j、錯誤網頁(Error Pages);

  k、安全設置信息;

  l、taglib配置;

  m、JNDI對象(env-entry,ejb-ref,ejb-local-ref,resource-ref,resource-env-ref)。

  其中taglib配置與JNDI對象這兩項是支持J2EE的Web服務器必須要求的。對于不支持J2EE的servlet/JSP服務器,不需要這兩項;在web.xml中的元素需要按照規定的大小寫和順序出現。

  2)Web程序結構和部署方式

  在設置了部署描述文件后,需要對Web程序進行編譯和打包,一個Web程序需要依照標準的目錄和文件格式組織其內容。例如在Tomcat 5.0中的目錄和文件格式,其中WEB-INF目錄中有web.xml部署描述文件和包括該Web程序Java類的classes目錄。在Web服務器中部署Web程序的方式有兩種:一種是直接將依照標準格式的Web程序的整個目錄編譯后放入Web服務器的webapps目錄,這樣Web服務器啟動時會自動加載Web程序;另一種是將Web程序編譯并打包生成一個war文件,然后放入Web服務器的webapps目錄。Web服務器可以選擇不需解壓直接加載這個Web程序的war文件,或者將這個war文件解壓到一個目錄后加載。在/conf/server.xml中可以設定選擇何種加載方式。假如<Host>標記的unpackWARs="flase",表明Web服務器不需要將war文件解壓成目錄;假如unpackWARs="true",表明Web服務器會在第一次加載Web程序時將該war文件解壓成一個目錄。

<Host name="localhost" appBase="webapps" debug="0" unpackWARs="false">

  第二種方式的優點是增強了Web程序的可移植性,一個war文件可以在不同的符合標準的Web服務器中運行而且文件比較?。划斝枰獙eb程序給予其他人員時,給對方一個war文件當然比給一個目錄方便;但是生成war文件需要將一個Web程序的目錄進行壓縮,在調試過程中,假如編程者需要經常對程序的某些部分進行改動,使用第一種方式就比較方便。每次需要改動時就在webapps的Web程序目錄中用改動的文件替代舊的文件,而不用每次打包生成war文件。

  3)使用編程工具編譯和打包

  一個war文件就是有特定格式(如WEB-INF目錄)的jar文件,它將一個Web程序的所有內容進行壓縮。在生成war文件之前,所有WEB-INF/classes目錄下面的servlet,filter等類需要首先被成功編譯,最基本的方法是直接使用javac命令編譯所有的類。需要注重的是classpath環境變量要包括最新的servlet和JSP的jar,為了簡單高效地編譯Web程序并進行打包,可以使用提供Web程序治理功能的開發工具(IDE),比如Sun的Forte for Java IDE提供非常方便的Web程序開發環境,它可以統一治理程序的classpath和Java文檔,用來編寫大型的J2EE程序非常方便。可以使用Web服務器的deploytool打包,比如sun的JWSDP1.0就提供了一個圖形界面的deploytool;也可以使用Apache軟件組織開發的Ant(螞蟻)工具進行編譯和打包,完成Web程序部署。



 

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲欧洲午夜一线一品| 日韩激情av在线播放| 国产在线精品一区免费香蕉| 伊人成人开心激情综合网| 欧美成人精品在线视频| 久久久久久一区二区三区| 一区二区三区天堂av| 久久99亚洲热视| 国产香蕉精品视频一区二区三区| 亚洲国产精久久久久久| 久久精品国产一区二区三区| 国产精品夜间视频香蕉| 日韩中文字幕在线播放| 欧美日韩国产精品一区二区三区四区| 高清在线视频日韩欧美| 中文字幕免费精品一区高清| 国产欧洲精品视频| 久久伊人精品视频| 久久久久久久999精品视频| 97精品伊人久久久大香线蕉| 国产999视频| 日本久久久久久久久久久| 亚洲精品视频在线观看视频| 亚洲男女自偷自拍图片另类| 91精品国产综合久久香蕉| 中文字幕亚洲天堂| 日韩福利伦理影院免费| 日韩男女性生活视频| 国产精品h在线观看| 在线播放国产一区二区三区| 在线观看日韩av| 不卡中文字幕av| 亚洲97在线观看| 久久这里只有精品视频首页| 自拍视频国产精品| 4438全国成人免费| 亚洲小视频在线| 日韩欧美高清在线视频| 7m精品福利视频导航| 成人字幕网zmw| 亚洲一区二区三区乱码aⅴ| 国产精品福利网| 国产午夜精品美女视频明星a级| 岛国av在线不卡| 777777777亚洲妇女| 欧美一级电影免费在线观看| 欧美多人爱爱视频网站| 日韩精品中文字幕有码专区| 久久噜噜噜精品国产亚洲综合| 国产91色在线播放| 欧美激情a在线| 亚洲小视频在线| 欧美色另类天堂2015| 欧美又大又硬又粗bbbbb| 一区二区成人精品| www.日韩免费| 亚洲午夜性刺激影院| 欧美性视频在线| 97热精品视频官网| 欧美日韩亚洲视频| 国产精品久久久久aaaa九色| 最近2019年中文视频免费在线观看| 欧美人与性动交a欧美精品| 国产精品中文在线| 日韩av综合网站| 亚洲国产三级网| 亚洲第一天堂av| 久久影视电视剧凤归四时歌| 国产精品都在这里| 亚洲大胆美女视频| 国产精品羞羞答答| 91精品中国老女人| 久久久噜久噜久久综合| 亚洲精选中文字幕| 国产成人久久久| 久久在线视频在线| 欧美国产日本在线| 中文日韩在线视频| 在线激情影院一区| 国产精品亚洲一区二区三区| 91久久综合亚洲鲁鲁五月天| 国产成人精品视频在线观看| 久久这里有精品视频| 国产精品亚洲视频在线观看| 日韩av电影手机在线| 国产日韩换脸av一区在线观看| 国产精品久久久久aaaa九色| 久久人人爽人人爽人人片av高清| 91免费看国产| 国产精品自拍偷拍视频| 精品亚洲一区二区三区| 日韩美女免费线视频| 韩国v欧美v日本v亚洲| 欧美色视频日本高清在线观看| 国产精品福利在线观看| 欧美电影免费在线观看| 久久中文字幕视频| 美日韩精品免费观看视频| 国产精品一区专区欧美日韩| 91网站免费看| 成人情趣片在线观看免费| 亚洲www在线| 亚洲天堂成人在线| 亚洲午夜女主播在线直播| 国产精品高清在线观看| 欧美性在线观看| 97色伦亚洲国产| 日韩视频免费看| 亚洲国产精品yw在线观看| 精品动漫一区二区三区| 欧美成人在线免费视频| 亚洲伦理中文字幕| 国产精品草莓在线免费观看| 欧美电影在线观看网站| 国产精品旅馆在线| 亚洲精品美女视频| 欧美日韩中文字幕在线视频| 日韩成人在线观看| 性色av一区二区三区| 亚洲欧美一区二区激情| 久久久成人精品| 51久久精品夜色国产麻豆| 亚洲精品国产精品久久清纯直播| 欧美激情精品久久久久久| 日韩欧美国产视频| 日本一区二区不卡| 国产亚洲精品高潮| 国产91成人video| 欧美激情精品在线| 成人在线观看视频网站| 色偷偷av一区二区三区| 亚州精品天堂中文字幕| 欧美孕妇孕交黑巨大网站| 欧美午夜精品久久久久久久| 亚洲第一精品夜夜躁人人躁| 国产精品自拍视频| 成人久久一区二区| 成人写真视频福利网| 国产精品第七影院| 久久精品国产欧美亚洲人人爽| 欧美性猛交xxxx免费看| 亚洲a级在线观看| 欧美大片欧美激情性色a∨久久| 日韩一区av在线| 91久久嫩草影院一区二区| 亚洲国产成人精品久久久国产成人一区| 成人久久久久久| 97精品伊人久久久大香线蕉| 97视频在线观看成人| 亚洲专区国产精品| 国产欧美中文字幕| 欧美国产日韩在线| 91精品国产网站| 日韩在线观看免费网站| 欧美精品福利视频| 日韩av网址在线观看| 久久久久久久影院| 欧美小视频在线| 久久视频在线免费观看| 久久久久久久999| 亚洲午夜女主播在线直播| 欧美丰满片xxx777| 欧美激情videos| 一区二区三区天堂av|