华南俳烁实业有限公司

java

當(dāng)前位置:中華考試網(wǎng) >> java >> javaWeb >> 文章內(nèi)容

今天講一講web一些概念

來源:中華考試網(wǎng)  [2020年11月27日]  【

  Tomcat是一個免費的開源的Serlvet容器,它是Apache基金會的 Jakarta項目中的一個核 心項目,由Apache,Sun和其它一些公司及個人共同開發(fā)而成。由于有了Sun的參與和支持,最 新的Servlet和 Jsp規(guī)范總能在Tomcat中得到體現(xiàn)。

  與傳統(tǒng)的桌面應(yīng)用程序不同,Tomcat中的應(yīng)用程序是一個WAR(Web Archive)文件。WAR是Sun提出的一種Web應(yīng)用程序格式,與JAR類似,也是許多文件的一個壓縮包。這個包中的文件按一定目錄結(jié)構(gòu)來組織:通 常其根目錄下包含有Html和Jsp文件或者包含這兩種文件的目錄,另外還會有一個WEB-INF目錄,這個目錄很重要。通常在WEB-INF目錄下有一 個web.xml文件和一個classes目錄,web.xml是這個應(yīng)用的配置文件,而classes目錄下則包含編譯好的Servlet類和Jsp或 Servlet所依賴的其它類(如JavaBean)。通常這些所依賴的類也可以打包成JAR放到WEB-INF下的lib目錄下,當(dāng)然也可以放到系統(tǒng)的 CLASSPATH中,但那樣移植和管理起來不方便

  在Tomcat中,應(yīng)用程序的部署很簡單,你只需將你的WAR放到Tomcat的webapp目錄下,Tomcat會自動檢測到這個文件,并將其解壓。你 在瀏覽器中訪問這個應(yīng)用的Jsp時,通常第 一次會很慢,因為Tomcat要將Jsp轉(zhuǎn)化為Servlet文件,然后編譯。編譯以后,訪問將會很快。另外 Tomcat也提供了一個應(yīng)用:manager,訪問這個應(yīng)用需要用戶名和密碼,用戶名和密碼存儲在一個xml文件中。通過這個應(yīng)用,輔助于Ftp,你可 以在遠(yuǎn)程通過Web部署和撤銷應(yīng)用。當(dāng)然本地也可以。

  Tomcat不僅僅是一個Servlet容器,它也具有傳統(tǒng)的Web服務(wù)器的功能:處理Html頁面。但是與Apache相比,它的處理靜態(tài)Html的能 力就不如Apache。我們可以將Tomcat和Apache集成到一塊,讓Apache處理靜態(tài)Html,而Tomcat處理Jsp和Servlet。 這種集成只需要修改一下Apache和Tomcat的配置文件即可。

  基于Tomcat的開發(fā)其實主要是Jsp和Servlet的開發(fā),開發(fā)Jsp和Servlet非常簡單,你可以用普通的文本編輯器或者IDE,然后將其打 包成WAR即可。我們這里要提到另外一個工具Ant,Ant也是Jakarta中的一個子項目,它所實現(xiàn)的功能類似于Unix中的make。你需要寫一個 build.xml文件,然后運行Ant就可以完成xml文件中定義的工作,這個工具對于一個大的應(yīng)用來說非常好,我們只需在xml中寫很少的東西就可以 將其編譯并打包成WAR。事實上,在很多應(yīng)用服務(wù)器的發(fā)布中都包含了Ant。另外,在Jsp1.2中,可以利用標(biāo)簽庫實現(xiàn)Java代碼與Html文件的分 離,使Jsp的維護更方便。

  WEB服務(wù)器也稱為WWW(WORLD WIDE WEB)服務(wù)器,主要功能是提供網(wǎng)上信息瀏覽服務(wù)。

  (1)應(yīng)用層使用HTTP協(xié)議。

  (2)HTML文檔格式。

  (3)瀏覽器統(tǒng)一資源定位器(URL)。

  WWW代表萬維網(wǎng)的意思

  WWW 是 Internet 的多媒體信息查詢工具,是 Internet 上近年才發(fā)展起來的服務(wù),也是發(fā)展最快和目前用的最廣泛的服務(wù)。正是因為有了WWW工具,才使得近年來 Internet 迅速發(fā)展,且用戶數(shù)量飛速增長。

  1、WWW簡介

  WWW 是 World Wide Web (環(huán) 球信息網(wǎng))的縮寫,也可以簡稱為 Web,中文名字為“萬維網(wǎng)”。它起源于1989年3月,由歐洲量子物理實驗室 CERN(the European Laboratory for Particle Physics)所發(fā)展出來的主從結(jié)構(gòu)分布式超媒體系統(tǒng)。通過萬維網(wǎng),人們只要通過使用簡單的方法,就可以很迅速方便地取得豐富的信息資料。 由于用戶在通過 Web 瀏覽器訪問信息資源的過程中,無需再關(guān)心一些技術(shù)性的細(xì)節(jié),而且界面非常友好,因而 Web 在Internet 上一推出就受到了熱烈的歡迎,走紅全球,并迅速得到了爆炸性的發(fā)展。

  2、WWW的發(fā)展和特點

  長期以來,人們只是通過傳統(tǒng)的媒體(如電視、報紙、雜志和廣播等)獲得信息。但隨著計算機網(wǎng)絡(luò)的發(fā)展,人們想要獲取信息,已不再滿足于傳統(tǒng)媒體 那種單方面?zhèn)鬏敽瞳@取的方式,而希望有一種主觀的選擇性。現(xiàn)在,網(wǎng)絡(luò)上提供各種類別的數(shù)據(jù)庫系統(tǒng),如文獻期刊、產(chǎn)業(yè)信息、氣象信息、論文檢索等等。由于計 算機網(wǎng)絡(luò)的發(fā)展,信息的獲取變得非常及時、迅速和便捷。

  到了1993年,WWW 的技術(shù)有了突 破性的進展,它解決了遠(yuǎn)程信息服務(wù)中的文字顯示、數(shù)據(jù)連接以及圖像傳遞的問題,使得 WWW 成為 Internet 上最為流行的信息傳播方式。 現(xiàn)在,Web 服務(wù)器成為 Internet 上最大的計算機群,Web 文檔之多、鏈接的網(wǎng)絡(luò)之廣,令人難以想象?梢哉f,Web 為 Internet 的普及邁出了開創(chuàng)性的一步,是近年來 Internet 上取得的最激動人心的成就。

  填寫下面表單即可預(yù)約申請免費試聽java課程!害怕學(xué)不會?助教陪讀,隨時解惑!擔(dān)心就業(yè)?一地學(xué)習(xí),可全國推薦就業(yè)!

預(yù)約申請免費聽java課程

  • 地區(qū):
  • 姓名:
  • 手機:

  WWW 采用的是客戶/服務(wù)器結(jié)構(gòu),其作用是整理和儲存各種WWW資源,并響應(yīng)客戶端軟件的請求,把客戶所需的資源傳送到 Windows 95(或Windows98)、Windows NT、UNIX 或 Linux 等平臺上。

  使用最多的 web server 服務(wù)器軟件 有兩個:微軟的信息服務(wù)器(iis),和Apache。

  通俗的講,Web服務(wù)器傳送(serves)頁面使瀏覽器可以瀏覽,然而應(yīng)用程 序服務(wù)器提供的是客戶端應(yīng)用程序可以調(diào)用(call)的方法(methods)。確切一點,你可以說:Web服務(wù)器專門處理HTTP請求 (request),但是應(yīng)用程序服務(wù)器是通過很多協(xié)議來為應(yīng)用程序提供(serves)商業(yè)邏輯(business logic)。

  Web服務(wù)器可以解析(handles)HTTP協(xié)議。當(dāng)Web服務(wù)器接收到一個HTTP請求(request),會返回一個HTTP響應(yīng) (response),例如送回一個HTML頁面。為了處理一個請求(request),Web服務(wù)器可以響應(yīng)(response)一個靜態(tài)頁面或圖片, 進行頁面跳轉(zhuǎn)(redirect),或者把動態(tài)響應(yīng)(dynamic response)的產(chǎn)生委托(delegate)給一些其它的程序例如CGI腳本,JSP(JavaServer Pages)腳本,servlets,ASP(Active Server Pages)腳本,服務(wù)器端(server-side)JavaScript,或者一些其它的服務(wù)器端(server-side)技術(shù)。無論它們(譯者 注:腳本)的目的如何,這些服務(wù)器端(server-side)的程序通常產(chǎn)生一個HTML的響應(yīng)(response)來讓瀏覽器可以瀏覽。

  要知道,Web服務(wù)器的代理模型(delegation model)非常簡單。當(dāng)一個請求(request)被送到Web服務(wù)器里來時,它只單純的把請求(request)傳遞給可以很好的處理請求 (request)的程序(譯者注:服務(wù)器端腳本)。Web服務(wù)器僅僅提供一個可以執(zhí)行服務(wù)器端(server-side)程序和返回(程序所產(chǎn)生的)響 應(yīng)(response)的環(huán)境,而不會超出職能范圍。服務(wù)器端(server-side)程序通常具有事務(wù)處理(transaction processing),數(shù)據(jù)庫連接(database connectivity)和消息(messaging)等功能。

  雖然Web服務(wù)器不支持事務(wù)處理或數(shù)據(jù)庫連接池,但它可以配置(employ)各種策略(strategies)來實現(xiàn)容錯性(fault tolerance)和可擴展性(scalability),例如負(fù)載平衡(load balancing),緩沖(caching)。集群特征(clustering—features)經(jīng)常被誤認(rèn)為僅僅是應(yīng)用程序服務(wù)器專有的特征。

  應(yīng)用程序服務(wù)器(The Application Server)

  根據(jù)我們的定義,作為應(yīng)用程序服務(wù)器,它通過各種協(xié)議,可以包括HTTP,把商業(yè)邏輯暴露給(expose)客戶端應(yīng)用程序。Web服務(wù)器主要 是處理向瀏覽器發(fā)送HTML以供瀏覽,而應(yīng)用程序服務(wù)器提供訪問商業(yè)邏輯的途徑以供客戶端應(yīng)用程序使用。應(yīng)用程序使用此商業(yè)邏輯就象你調(diào)用對象的一個方法 (或過程語言中的一個函數(shù))一樣。

  應(yīng)用程序服務(wù)器的客戶端(包含有圖形用戶界面(GUI)的)可能會運行在一臺PC、一個Web服務(wù)器或者甚至是其它的應(yīng)用程序服務(wù)器上。在應(yīng)用 程序服務(wù)器與其客戶端之間來回穿梭(traveling)的信息不僅僅局限于簡單的顯示標(biāo)記。相反,這種信息就是程序邏輯(program logic)。 正是由于這種邏輯取得了(takes)數(shù)據(jù)和方法調(diào)用(calls)的形式而不是靜態(tài)HTML,所以客戶端才可以隨心所欲的使用這種被暴露的商業(yè)邏輯。

  在大多數(shù)情形下,應(yīng)用程序服務(wù)器是通過組件(component)的應(yīng)用程序接口(API)把商業(yè)邏輯暴露(expose)(給客戶端應(yīng)用程 序)的,例如基于J2EE(Java 2 Platform, Enterprise Edition)應(yīng)用程序服務(wù)器的EJB(Enterprise JavaBean)組件模型。此外,應(yīng)用程序服務(wù)器可以管理自己的資源,例如看大門的工作(gate-keeping duties)包括安全(security),事務(wù)處理(transaction processing),資源池(resource pooling), 和消息(messaging)。就象Web服務(wù)器一樣,應(yīng)用程序服務(wù)器配置了多種可擴展(scalability)和容錯(fault tolerance)技術(shù)。

  例如,設(shè)想一個在線商店(網(wǎng)站)提供實時定價(real-time pricing)和有效性(availability)信息。這個站點(site)很可能會提供一個表單(form)讓你來選擇產(chǎn)品。當(dāng)你提交查詢 (query)后,網(wǎng)站會進行查找(lookup)并把結(jié)果內(nèi)嵌在HTML頁面中返回。網(wǎng)站可以有很多種方式來實現(xiàn)這種功能。我要介紹一個不使用應(yīng)用程序 服務(wù)器的情景和一個使用應(yīng)用程序服務(wù)器的情景。觀察一下這兩中情景的不同會有助于你了解應(yīng)用程序服務(wù)器的功能。

  情景1:不帶應(yīng)用程序服務(wù)器的Web服務(wù)器

  在此種情景下,一個Web服務(wù)器獨立提供在線商店的功能。Web服務(wù)器獲得你的請求(request),然后發(fā)送給服務(wù)器端(server- side)可以處理請求(request)的程序。此程序從數(shù)據(jù)庫或文本文件(flat file,譯者注:flat file是指沒有特殊格式的非二進制的文件,如properties和XML文件等)中查找定價信息。一旦找到,服務(wù)器端(server-side)程序 把結(jié)果信息表示成(formulate)HTML形式,最后Web服務(wù)器把會它發(fā)送到你的Web瀏覽器。

  簡而言之,Web服務(wù)器只是簡單的通過響應(yīng)(response)HTML頁面來處理HTTP請求(request)。

  情景2:帶應(yīng)用程序服務(wù)器的Web服務(wù)器

  情景2和情景1相同的是Web服務(wù)器還是把響應(yīng)(response)的產(chǎn)生委托(delegates)給腳本(譯者注:服務(wù)器端 (server-side)程序)。然而,你可以把查找定價的商業(yè)邏輯(business logic)放到應(yīng)用程序服務(wù)器上。由于這種變化,此腳本只是簡單的調(diào)用應(yīng)用程序服務(wù)器的查找服務(wù)(lookup service),而不是已經(jīng)知道如何查找數(shù)據(jù)然后表示為(formulate)一個響應(yīng)(response)。 這時當(dāng)該腳本程序產(chǎn)生HTML響應(yīng)(response)時就可以使用該服務(wù)的返回結(jié)果了。

  在此情景中,應(yīng)用程序服務(wù)器提供(serves)了用于查詢產(chǎn)品的定價信息的商業(yè)邏輯。(服務(wù)器的)這種功能(functionality)沒 有指出有關(guān)顯示和客戶端如何使用此信息的細(xì)節(jié),相反客戶端和應(yīng)用程序服務(wù)器只是來回傳送數(shù)據(jù)。當(dāng)有客戶端調(diào)用應(yīng)用程序服務(wù)器的查找服務(wù)(lookup service)時,此服務(wù)只是簡單的查找并返回結(jié)果給客戶端。

  通過從響應(yīng)產(chǎn)生(response-generating)HTML的代碼中分離出來,在應(yīng)用程序之中該定價(查找)邏輯的可重用性更強了。其 他的客戶端,例如收款機,也可以調(diào)用同樣的服務(wù)(service)來作為一個店員給客戶結(jié)帳。相反,在情景1中的定價查找服務(wù)是不可重用的因為信息內(nèi)嵌在 HTML頁中了。

  總而言之,在情景2的模型中,在Web服務(wù)器通過回應(yīng)HTML頁面來處理HTTP請求(request),而應(yīng)用程序服務(wù)器則是通過處理定價和有效性(availability)請求(request)來提供應(yīng)用程序邏輯的。

  警告(Caveats)

  現(xiàn)在,XML Web Services已經(jīng)使應(yīng)用程序服務(wù)器和Web服務(wù)器的界線混淆了。通過傳送一個XML有效載荷(payload)給服務(wù)器,Web服務(wù)器現(xiàn)在可以處理數(shù)據(jù)和響應(yīng)(response)的能力與以前的應(yīng)用程序服務(wù)器同樣多了。

  另外,現(xiàn)在大多數(shù)應(yīng)用程序服務(wù)器也包含了Web服務(wù)器,這就意味著可以把Web服務(wù)器當(dāng)作是應(yīng)用程序服務(wù)器的一個子集(subset)。雖然應(yīng) 用程序服務(wù)器包含了Web服務(wù)器的功能,但是開發(fā)者很少把應(yīng)用程序服務(wù)器部署(deploy)成這種功能(capacity)(譯者注:這種功能是指既有 應(yīng)用程序服務(wù)器的功能又有Web服務(wù)器的功能)。相反,如果需要,他們通常會把Web服務(wù)器獨立配置,和應(yīng)用程序服務(wù)器一前一后。這種功能的分離有助于提 高性能(簡單的Web請求(request)就不會影響應(yīng)用程序服務(wù)器了),分開配置(專門的Web服務(wù)器,集群(clustering)等等),而且給 最 佳產(chǎn)品的選取留有余地。

  大型WEB服務(wù)器

  在UNIX和LINUX平臺下使用最廣泛的免費HTTP服務(wù)器是W3C、NCSA和APACHE服務(wù)器,而Windows平臺NT/2000 /2003使用IIS的WEB服務(wù)器。在選擇使用WEB服務(wù)器應(yīng)考慮的本身特性因素有:性能、安全性、日志和統(tǒng)計、虛擬主機、代理服務(wù)器、緩沖服務(wù)和集成 應(yīng)用程序等,下面介紹幾種常用的WEB服務(wù)器。

  Microsoft IIS

  Microsoft的Web服務(wù)器產(chǎn)品為Internet Information Server (IIS), IIS 是允許在公共Intranet或Internet上發(fā)布信息的Web服務(wù)器。IIS是目前最流行的Web服務(wù)器產(chǎn)品之一,很多著 名的網(wǎng)站都是建立在IIS 的平臺上。IIS提供了一個圖形界面的管理工具,稱為 Internet服務(wù)管理器,可用于監(jiān)視配置和控制Internet服務(wù)。

  IIS是一種Web服務(wù)組件,其中包括Web服務(wù)器、FTP服務(wù)器、NNTP服務(wù)器和SMTP服務(wù)器,分別用于網(wǎng)頁瀏覽、文件傳輸、新聞服務(wù)和 郵件發(fā)送等方面,它使得在網(wǎng)絡(luò)(包括互聯(lián)網(wǎng)和局域網(wǎng))上發(fā)布信息成了一件很容易的事。它提供ISAPI(Intranet Server API)作為擴展Web服務(wù)器功能的編程接口;同時,它還提供一個Internet數(shù)據(jù)庫連接器,可以實現(xiàn)對數(shù)據(jù)庫的查詢和更新。

  IBM WebSphere

  WebSphere Application Server 是 一 種功能完善、開放的Web應(yīng)用程序服務(wù)器,是IBM電子商務(wù)計劃的核 心部分,它是基于 Java 的應(yīng)用環(huán)境,用于建立、部署和管理 Internet 和 Intranet Web 應(yīng)用程序。 這一整套產(chǎn)品進行了擴展,以適應(yīng) Web 應(yīng)用程序服務(wù)器的需要,范圍從簡單到高級直到企業(yè)級。

  WebSphere 針對以 Web 為中心的開發(fā)人員,他們都是在基本 HTTP服務(wù)器和 CGI 編程技術(shù)上成長起來的。IBM 將提供 WebSphere 產(chǎn)品系列,通過提供綜合資源、可重復(fù)使用的組件、功能強大并易于使用的工具、以及支持 HTTP 和 IIOP 通信的可伸縮運行時環(huán)境,來幫助這些用戶從簡單的 Web 應(yīng)用程序轉(zhuǎn)移到電子商務(wù)世界。

  BEA WebLogic

  BEA WebLogic Server 是一種多功能、基于標(biāo)準(zhǔn)的web應(yīng)用服務(wù)器,為企業(yè)構(gòu)建自己的應(yīng)用提供了堅實的基礎(chǔ)。各種應(yīng)用開發(fā)、部署所有關(guān)鍵性的任務(wù),無論是集成各種系統(tǒng)和數(shù)據(jù)庫, 還是提交服務(wù)、跨 Internet 協(xié)作,起始點都是 BEA WebLogic Server。由于 它具有全 面的功能、對開放標(biāo)準(zhǔn)的遵從性、多層架構(gòu)、支持基于組件的開發(fā),基于 Internet 的企業(yè)都選擇它來開發(fā)、部署最 佳的應(yīng)用。

  BEA WebLogic Server 在使應(yīng)用服務(wù)器成為企業(yè)應(yīng)用架構(gòu)的基礎(chǔ)方面繼續(xù)處于領(lǐng)先地 位。BEA WebLogic Server 為構(gòu)建集成化的企業(yè)級應(yīng)用提供了穩(wěn)固的基礎(chǔ),它們以 Internet 的容量和速度,在連網(wǎng)的企業(yè)之間共享信息、提交服務(wù),實現(xiàn)協(xié)作自動化。

  APACHE

  apache仍然是世界上用的最多的Web服務(wù)器,市場占有率達(dá)60%左右。它源于NCSAhttpd服務(wù)器,當(dāng)NCSA WWW服務(wù)器項目停止后,那些使用NCSA WWW服務(wù)器的人們開始交換用于此服務(wù)器的補丁,這也是apache名稱的由來(pache 補丁)。世界上很多著 名的網(wǎng)站都是Apache的產(chǎn)物,它的成功之處主要在于它的源代碼開放、有一支開放的開發(fā)隊伍、支持跨平臺的應(yīng)用(可以運行在幾乎所 有的Unix、Windows、Linux系統(tǒng)平臺上)以及它的可移植性等方面。

  Tomcat

  Tomcat是一個開放源代碼、運行servlet和JSP Web應(yīng)用軟件的基于Java的Web應(yīng)用軟件容器。Tomcat Server是根據(jù)servlet和JSP規(guī)范進行執(zhí)行的,因此我們就可以說Tomcat Server也實行了Apache-Jakarta規(guī)范且比絕大多數(shù)商業(yè)應(yīng)用軟件服務(wù)器要好。

  Tomcat是Java Servlet 2.2和JavaServer Pages 1.1技術(shù)的標(biāo)準(zhǔn)實現(xiàn),是基于Apache許可證下開發(fā)的自由軟件。Tomcat是完全重寫的Servlet API 2.2和JSP 1.1兼容的Servlet/JSP容器。Tomcat使用了JServ的一些代碼,特別是Apache服務(wù)適配器。隨著Catalina Servlet引擎的出現(xiàn),Tomcat第四版號的性能得到提 升,使得它成為一個值得考慮的Servlet/JSP容器,因此目前許多WEB服務(wù)器都是采 用Tomcat。

  J2EE容器包括:

  ◆ Web容器 服務(wù)器端容器,包括兩種組件JSP和Servlet,JSP和Servlet都是Web服務(wù)器的功能擴展,接受Web請求,返回動態(tài)的Web頁面。Web容器中的組件可使用EJB容器中的組件完成復(fù)雜的商務(wù)邏輯。

  ◆ EJB容器 服務(wù)器端容器,包含的組件為EJB(Enterprise JavaBeans),它是J2EE的核 心之一,主要用于服務(wù)器端的商業(yè)邏輯的實現(xiàn)。EJB規(guī)范定義了一個開發(fā)和部署分布式商業(yè)邏輯的框架,以簡化企業(yè)級 應(yīng)用的開發(fā),使其較容易地具備可伸縮性、可移植性、分布式事務(wù)處理、多用戶和安全性等。

  ◆ Applet容器 客戶端容器,包含的組件為Applet。Applet是嵌在瀏覽器中的一種輕量級客戶端,一般而言,僅當(dāng)使用Web頁面無法充分地表現(xiàn)數(shù)據(jù)或應(yīng)用界面的時 候,才使用它。Applet是一種替代Web頁面的手段,我們僅能夠使用J2SE開發(fā)Applet,Applet無法使用J2EE的各種Service和 API,這是為了安全性的考慮。

  ◆ Application Client容器 客戶端容器,包含的組件為Application Client。Application Client相對Applet而言是一種較重量級的客戶端,它能夠使用J2EE的大多數(shù)Service和API。

  通過這四個容器,J2EE能夠靈活地實現(xiàn)前面描述的企業(yè)級應(yīng)用的架構(gòu)。

責(zé)編:fushihao

上一篇:Taglib原理和實現(xiàn)之什么是Taglib

下一篇: 沒有了

  • 會計考試
  • 建筑工程
  • 職業(yè)資格
  • 醫(yī)藥考試
  • 外語考試
  • 學(xué)歷考試
久治县| 无为县| 太湖县| 博白县| 安岳县| 汨罗市| 嘉祥县| 当雄县| 扶余县| 通江县| 财经| 公主岭市| 丹巴县| 绥芬河市| 高台县| 鄢陵县| 兰坪| 龙胜| 托克逊县| 红原县| 雷山县| 佳木斯市| 黑龙江省| 灵川县| 霍州市| 林州市| 马山县| 独山县| 怀化市| 茶陵县| 千阳县| 沅陵县| 木里| 涟水县| 平遥县| 修水县| 商丘市| 鹰潭市| 聂拉木县| 和田市| 颍上县|