當前位置:首頁 » 網頁前端 » webxmlhtml
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

webxmlhtml

發布時間: 2023-01-03 15:02:20

① xml和html有何區別呢

Q: 不知xml和html有什麼區別?它們不同在哪?

A: 關於XML和HTML區別請參考:

http://www.w3c.org/MarkUp/
http://www.w3c.org/XML/

「可擴展標記語言」(XML) 提供一種描述結構化數據的方法。與主要用於控制數據的顯示和外觀的 HTML 標記不同,XML 標記用於定義數據本身的結構和數據類型。

XML 使用一組標記來描繪數據元素。每個元素封裝可能十分簡單也可能十分復雜的數據。您可以定義一組無限制的 XML 標記。例如,您可以定義一些 XML 標記來聲明訂單中的數據,如價格、稅收、發貨地址、帳單地址等等。由於 XML 標記在整個單位中以及跨單位採用,因此來自各種不同數據存儲區的數據將更容易交換和操作。

XML 是一種簡單、與平台無關並被廣泛採用的標准。XML 相對於 HTML 的優點是它將用戶界面與結構化數據分隔開來。這種數據與顯示的分離使得集成來自不同源的數據成為可能。客戶信息、訂單、研究結果、帳單付款、病歷、目錄數據及其他信息都可以轉換為 XML。

XML 與 HTML
以下是要記住的有關 XML 與 HTML 之間關系的幾個要點:

a.. XML 不是要替換 HTML;實際上 XML 可以視作對 HTML 的補充。XML 和 HTML 的目標不同:HTML 的設計目標是顯示數據並集中於數據外觀,而 XML 的設計目標是描述數據並集中於數據的內容。
b.. 與 HTML 相似,XML 不進行任何操作。雖然 XML 標記可用於描述訂單之類的項的結構,但它不包含可用於發送或處理該訂單以及確保按該訂單交貨的任何代碼。其他人必須編寫代碼來實際對 XML 格式的數據執行這些操作。
c.. 與 HTML 不同,XML 標記由架構或文檔的作者定義,並且是無限制的。HTML 標記則是預定義的;HTML 作者只能使用當前 HTML 標准所支持的標記。

XML 的使用
XML 是一種極靈活的、傳遞數據的方式。以下全部是可使用 XML 的場合的示例:

a.. 普通文檔
b.. 結構化記錄,如約會記錄或訂單
c.. 移動數據的 Internet/Intranet Web 應用程序
d.. 帶有數據的對象,如對象或 ActiveX 控制項的持久格式
e.. 數據記錄,如查詢的結果集
f.. Web 站點的元內容,如「信道定義格式」(CDF)
g.. 圖形顯示,如應用程序的用戶界面
h.. Web 上信息與人的鏈接
i.. C# 代碼(可以用 XML 形式);有關更多信息,請參見 XML 文檔
j.. 用於定位可用 XML Web services 的發現文檔;有關更多信息,請參見 XML Web services 發現。

以下列出存儲信息時 XML 相對於其他格式的若干優越性:

a.. XML 格式是基於文本的,這使得它們更容易讀、更便於記錄,有時也更便於調試。
b.. XML 文檔可使用已為 HTML 建立的很多基礎結構,包括 HTTP 協議和某些瀏覽器。HTTP 允許穿過防火牆傳輸 XML。
c.. XML 分析已有完善的定義,且已廣泛應用,使得在各種環境中從 XML 文檔檢索信息成為可能。
d.. 應用程序可依賴 XML 分析器進行某些結構驗證以及數據類型檢查(當使用架構時)。
e.. XML 建立在 Unicode 基礎上,使得創建國際化文檔更容易。不過,XML 並不適合於所有情況。XML 文檔往往比它們替換的二進制格式詳細。它們佔用更多的網路帶寬和存儲空間,或需要更多的處理器時間進行壓縮。XML 分析可能比分析高度優化的二進制格式慢,並且可能需要更多內存。然而,精心的應用程序設計能夠
避免一些問題。

驗證 XML 文檔
若要驗證 XML 文檔包含所需數據和結構,必須將一個 XML 架構與 XML 文檔相關聯。XML 架構是定義如何構造元素和屬性來形成 XML 文檔的規則。您可以在單位之間共享架構,以使得傳輸和處理共享數據變得簡單。有關更多信息,請參見 XML 架構介紹。

顯示 XML 數據
有幾種方式可用於顯示(或提供)XML 數據。

還有數據綁定的機制可與樣式表一起使用,以便以可視形式展示 XML 數據,以及添加交互性。

以下是顯示 XML 的幾種方法:

a.. XSLT — 可擴展樣式表語言
b.. CSS — 級聯樣式表
c.. Microsoft Internet Explorer
有關更多信息,請參見 MSDN Online XML 開發人員中心 Web 站點
(http://msdn.microsoft.com/xml/default.asp)。

XML 資源
如果您熟悉 HTML,則可以學習創建 XML 文檔,只要求它們有效且符合標准格式。有關
XML 的更多信息,請參見 XML SDK 和 MSDN Online XML 開發人員中心 Web 站點
(http://msdn.microsoft.com/xml/default.asp)。

有關更多信息,請參見萬維網聯合會 (W3C) 的 XML 規范
(http://www.w3.org/XML/)。

Q: 那為什麼有很多大型的網站,還是用html而不是xml呢?

A:XML和HTML實質上是不一樣的,你說大型站點使用HTML,如果是靜態數據用HTML速度當然最快了,但是維護欠佳!
一般使用XML+CSS進行站點設計,但XML+CSS局限性比較大,還是用XML+XSLT吧

Q: 現在我直接用xml開發一個網站,再直接上傳到現在提供的普通靜態空間,它能顯示嗎?

A: 如果可以假定用戶都使用(或至少裝置了)IE6就沒有什麼問題。

如果用戶使用其它瀏覽器,那就應該在伺服器端進行XML->HTML的轉換,普通靜態空間不支持。可以選支持XMLDOM的ASP或PHP空間。因此運行環境是不同的
參考資料:http://www.it0551.net/school/website/htmlcss/200507/13666.html

② 什麼是web.xml標記,有哪些

所謂的xml,就是eXtensible Markup Language, 翻譯成中文就是「可擴展標識語言「,在國內很多人理解xml為html的簡單擴展,這實際上是一種誤解。盡管xml同html關系非常密切。
XML與SGML、HTML的關系。
SGML、HTML是XML的先驅。SGML是指「通用標識語言標准」(Standard Generalized Markup Language), 它是國際上定義電子文件結構和內容描述的標准,是一種非常復雜的文檔的結構,主要用於大量高度結構化數據的防衛區和其他各種工業領域,利於分類和索引。同XML相比,定義的功能很強大,缺點是它不適用於Web數據描述,而且SGML軟體價格非常價格昂貴。 HTML相信大家都比較熟悉,即「HyperText Markup Language」 (超文本標識語言),它的優點是比較適合web 頁面的開發。但它有一個缺點是標記相對少,只有固定的標記集如<p>.<strong>等。缺少sgml 的柔性和適應性。不能支持特定領域的標記語言,如對數學、化學、音樂等領域的表示支持較少。舉個例子來說,開發者很難在web pape 上表示數學公式、化學分子式和樂譜。
Xml 結合了sgml 和html的優點並消除其缺點。Xml 仍然被認為是一種sgml語言。比sgml要簡單,但能實現sgml的大部分的功能。1996年的夏天,Sun Microssystem的John Bosak開始開發W3C SGML工作組(現在稱為xml工作組)。他們的目標是創建一種sgml,使其在Web中,既能利用Sgml的長處,又保留html的簡單性。現在目標基本達到。
二、Xml 的發展。
在專業領域中,出現了Web標記語言的許多項目,著名的有CML—化學標記語言,由Peter Murray_Rust 開發,同時開發了第一個通用xml 瀏覽器Jumbo . 在數學方面,包括IBM公司再內都在致力開發MathML 1997年四月,出版了xll的第一個版本。當xll完整實現時,將比html 和當前瀏覽器所達到的鏈接水平更復雜,更強大。1997年8月,Microsoft公司和Inso公司引入xsl.由於xml是純結構和語義的,需要描述單個元素格式方法。可以使用html的CSS;另一種方案是xsl. 1998年1月,microsoft 公司出版發行了msxsl程序。可以利用xsl表和xml文檔創建能被IE4 識別的html頁面。1998年2月,W3C發布了xml1.0的正式版本。最近一年多來,由於網路應用的飛速發展,xml的發展非常迅猛。出現了DOM(Document Object Model),XSLT(XSL Transformation)等新名詞,xml的應用軟體也有了飛速的發展,Microsoft、IBM、Breeze、Stilo等公司紛紛推出了自己的或解析器,或開發平台。在MicrosoftIBM、HP等大公司的推動下,目前有兩個著名的xml的研究組織,分別是biztalk.com和oasis.org,由他們向W3C提出標準的建議。其中biztalk是有Microsoft牽頭組織的,有趣的是Microsoft公司同時參加了oaisis,不過不同於IBM、HP等著名大公司,他的年費只交10萬美元,用Microsoft發言人的話就是「一切視oasis的發展而定!「,言下之意就是如果oasis制定的標准抵觸Microsoft的應用,一場標准大戰不可避免。
什麼是XML
首先XML是一種元標記語言,所謂「元標記」就是開發者可以根據自己的需要定義自己的標記,比如開發者可以定義如下標記<book> <name>,任何滿足xml命名規則的名稱都可以標記,這就為不同的應用程序打開了的大門。HTML是一種預定義標記語言,它只認識諸如<html>,<p>等已經定義的標記,對於用戶自己定義的標記是不認識的。 第二xml是一種語義/結構化語言。它描述了文檔的結構和語義。舉個例子,在和html中,要描述一本書,可以如下表示:
<dt> book name
<dd> author_name <ul> <li>publisher_name ;;;; <li>isbn_number <ul> 在xml中,同樣的數據表示為 <book> <title>book name</title> <author>author name</author) <publisher> publisher name</publisher> <isbn>isbn_number</isbn> </book> 從上面的對比,可以看出,xml的文檔是有明確語義並且是結構化的。 XML是一種通用的數據格式從低級的角度看,xml是一種簡單的數據格式,是純100%的ASCII文本,而ASCII的抗破壞能力是很強的。不象壓縮數據和java對象,只要破壞一個數據文件數據就不可閱讀。 從高級的角度看,是一種自描述語言。
XML可利用於數據交換 主要是因為XML表示的信息獨立於平台的,這里的平台即可以理解為不同的應用程序也可以理解為不同的操作系統;它描述了一種規范,利用它Microsoft的word文檔可以和Adobe 的Acrobat交換信息,可以和資料庫交換信息。
XML表示的結構化數據。
對於大型復雜的文檔,xml 是一種理想語言,不僅允許指定文檔中的詞彙,還允許指定元素之間的關系。比如可以規定一個author元素必須有一個name子元素。可以規定企業的業務必須有包括什麼子業務。
XML文檔。 XML文檔有DTD和XML文本組成,所謂DTD(Document Type Definition ),簡單的說就是一組標記符的語法規則.,表明XML文本是怎麼樣組織的,比如DTD可以表示一個<book>必須有一個子標記<author>, 可以有或者沒有子標記<pages> 等等。當然一個簡單的XML文本可以沒有DTD。下面是一個簡單的xml文本。 <? Xml version=」1.0」 standalone=」yes」> <book> haha </book> 其中以?開始並結尾的是進程說明。Standalone表示外圍設備。這里外圍設備可以理解為該XML文本沒有應用其他的文件。因為XML文件可以外部應用DTD等外部數據。
XML 涉及的一些技術。
XSL和CSS。
通過前面的介紹可以知道,XML可以定義信息的內容,卻沒有定義信息該如何表達,這實際上就是XML的長處,它把內容和形式分離了,這樣同一個內容可以有不同的表達,相信隨著XML應用的提高,那種「建議你使用800x600解析度「的會消失。而XML內容的表達就是通過XSL(XML Style Language)和CSS(Cascading Style Sheets 層疊樣式表)來實現。拿前一個例子來說,可以為該xml文檔定義的樣式表(XSL)如下: <xsl> <rule> <root/> <H1> <children/> </H1> </rule> <xsl> 這就是一個簡單的 XSL文件,利用msxsl可以生成html文件。如下 <h1> haha </hi> 至於CSS,在HTML文件中就已經有它的影子了,例如 H1 { font-size: 12pt; font-weight: bold; } 這就是一段簡單的CSS的文本。
XML Schema 盡管DTD給標記的使用加了限制,但是對於XML的自動處理卻還需要更加嚴格更全面的工具。比如DTD不能保證一個標記的某個屬性的值必須不為負值,於是出現了XML Schema,由於XML Schema(不同於DTD)本身也是一個正規的XML文檔,因此開發者可以使用相同的工具處理其同其他的XML的信息交換。最初XML Schema由Microsoft提出,W3C 的專家們經過充分討論和論證,在1999年的2月,發布了一個需求定義,說明Schema必須符合的要求,5月,W3C完成並發布了Schema的定義。目前,IE5中的XML解析器能夠根據文檔類型定義(DTD)或XML Schema解析XML
關於DOM DOM即Document Object Model, 它把XML文檔的內容實現為一個對象模型,簡單的說就是應用程序如何訪問XML文檔,W3C的DOM Level 1 定義了如何實現屬性、方法、事件等。
關於XSLT XSLT即XML Stylesheet Language Transformation. 在寫本文時正式標准還沒有正式形成,在1999年的11月通過了《XSLT》。XSLT是一種用來進行XML文檔間相互轉化的語言。簡單的說,我們知道不同的開發者對於各自的應用會用不同的XML文檔,利用XSLT我們可以從一個已經定義的XML文檔抽取我們需要的數據,組成不同的形式,可以是XML, HTML和各種不同的SCRIPT。
關於Xpointer和Xlinks
類似於HTML中的Hyper Link. Xpointer 和Xlink用於聯結其他的XML文檔和其他XML文檔中的部分,其中Xpointer相當於HTML中用於定位HTML文檔子內容的錨!不過其聯結水平更強大。比如,在bookstore中,可以定位到有一個作者叫金庸,書中有四大惡人的那本書,在HTML中,這是不可能實現的。
當然,XML的發展促使了許多的新技術的出現,其他的還有RDF、Xfrom等等,其中的大部分W3C只是給出了建議,還沒有形成正式的標准,有些內容甚至還處於討論階段。我們將密切注視著方面內容的變化。
XML 框架
所謂框架即Framework。XML是一個通用的標准。它不屬於個人,認證它的也不是一家公司,而是W3C。那麼為什麼那麼多的大公司紛紛趨指如鶩呢?各家公司互相競爭的是它的framework, 是它的Schema. XML framework是駕馭XML文件的結構,是一種高層次的結構控制。利用XML framework,可以把商業邏輯(business logic)分離出來,實現數據與計算的分離。目前著名的framework有Microsoft的Biztalk 以及聯合國(UN/CEFACT)和OASIS聯合於99年底推出了EBXML動議。相信在不久的將來會有許多的Framwork. 其中的一個問題就是在W3C中關於XML的很多東西還處於建議的時候,就推出framework,是不是一種冒險。不過,互聯網的發展似乎就是這樣,關於framwwork的發展,我們將拭目以待。
WEB就是網頁,WWW是萬維網

③ 試區分HTML和XML在支持Web的應用中的作用

Xml的語法和HTML類似,都以一對相互匹配的起始和結束標記符號來標識信息。但是二者之間功能不同,HTML是用於顯示數據信息,而XML的標記則是用於描述數據的性質和結構,兩者之間的區別如下:
1.HTML將數據和其顯示效果混在一起,它是一種表現技術,定義如何顯示信息的標簽;而XML文檔只是存儲了數據和描述了數據之間的關系,並沒有規定如何顯示數據,即將數據和其顯示進行了分離。
2.HTML的格式要求比較鬆散,而HTML解析器通常採用盡量解釋的機制,這樣容易造成同一個頁面在不同的瀏覽器中可能顯示出大不相同的結果。而XMlL是非常嚴格的標記語言,如:嚴格區分大小寫等問題。
3.HTMl的標記集合是固定的,你不能在自己的應用中擴展HTML標記;而XML沒有提供一組事先已經定義好的標簽,只是提供了一個標准,可以按照這個標准來定義自己專用的標記,所以XML的標記是可以無限的擴展的,它可以用於描述各種應用領域的數據信息。
4.XML允許粒度更新,不必在XML文檔每次有局部改變時都發送整個文檔的內容,只有改變的元素才必須從伺服器發送到客戶機,而HTML卻不支持這樣的功能。
總結:XML不是HTML的升級,也不是HTML的代替產品,雖然兩者之間相似,但他們的應用領域和范圍完全不同。HTML的最終版本是HTML 4.01,HTMl目前已經不是Web標記的標准,它已經被XHTML所取代,XHTML是HTML和XML的混合物,它全採取的是XML的語法和規則來編寫Web頁面。XHTML有效的結合了HTML的簡單性和XML的可擴展行,它所運用的標記和屬性基本上還是HTML中定義的標記。XML可以應用在金融、科研等各個領域,XHTML只是XML在Web領域的一種應用。

④ java語言:我在web.xml中配置了歡迎頁面,以.html結尾的index頁面.

是不是在其他配置裡面做了過濾,禁止訪問.html結尾的文件

⑤ Web服務中既有HTML,又有XML,關於XML和HTML說法不正確的是

你好,HTML是超文本標記語言,標准通用標記語言下的一個應用。XML是可擴展標記語言,標准通用標記語言的子集,是一種用於標記電子文件使其具有結構性的標記語言。

⑥ web.xml lt;filter-mapping>我不想過濾html文件,怎麼設置

不使用 /* 攔截所有,攔截想攔截的就可以了

類似下面的過濾方式
<filter>
<filter-name>encodingFilter</filter-name>
<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>encodingFilter</filter-name>
<url-pattern>*.action</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>encodingFilter</filter-name>
<url-pattern>*.usl</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>encodingFilter</filter-name>
<url-pattern>*.jsp</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>encodingFilter</filter-name>
<url-pattern>*.view</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>encodingFilter</filter-name>
<url-pattern>/jaxrs/*</url-pattern>
</filter-mapping>
在filter類中判斷一下,如果是.html結尾的就不過濾。
HttpServletRequest req = (HttpServletRequest)request;
//由於web.xml中設置Filter過濾全部請求,可以排除不需要過濾的url
String reqURI = req.getRequestURI();
if(reqURI.endsWith(".html")) chain.doFilter(request, response);
HttpServletRequest req = (HttpServletRequest)request;
//由於web.xml中設置Filter過濾全部請求,可以排除不需要過濾的url
String reqURI = req.getRequestURI();
if(reqURI.endsWith(".html")) chain.doFilter(request, response);

chain是以下過濾方法中的chain嗎?
public void doFilter(ServletRequest request,
ServletResponse response,
FilterChain chain) throws IOException, ServletException{

另外, if(reqURI.endsWith(".html")) 到底是 真還是假

HttpServletRequest req = (HttpServletRequest)request;
//由於web.xml中設置Filter過濾全部請求,可以排除不需要過濾的url
String reqURI = req.getRequestURI();
if(reqURI.endsWith(".html")) chain.doFilter(request, response);

chain是以下過濾方法中的chain嗎?
public void doFilter(ServletRequest request,
ServletResponse response,
FilterChain chain) throws IOException, ServletException{

另外, if(reqURI.endsWith(".html")) 到底是 真還是假

就是這個chain,這個判斷就是判斷你放問的路徑是否以.html結尾,你可以試試。

HttpServletRequest req = (HttpServletRequest)request;
//由於web.xml中設置Filter過濾全部請求,可以排除不需要過濾的url
String reqURI = req.getRequestURI();
if(reqURI.endsWith(".html")) chain.doFilter(request, response);

chain是以下過濾方法中的chain嗎?
public void doFilter(ServletRequest request,
ServletResponse response,
FilterChain chain) throws IOException, ServletException{

另外, if(reqURI.endsWith(".html")) 到底是 真還是假

就是這個chain,這個判斷就是判斷你放問的路徑是否以.html結尾,你可以試試。

報錯
java.lang.IllegalStateException: getWriter() has already been called for this response
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain) throws IOException, ServletException {
//把ServletRequest和ServletResponse轉換成真正的類型
HttpServletRequest req = (HttpServletRequest)request;
String reqURI = req.getRequestURI();
if(reqURI.endsWith(".do")) chain.doFilter(request, response);
System.out.println(reqURI);
chain.doFilter(request, response);
}

我這里用過的原代碼,沒錯,你看下你別的地方,用到response的地方
//把ServletRequest轉換成真正的類型
HttpServletRequest req = (HttpServletRequest)request;
String reqURI = req.getRequestURI();
if(reqURI.endsWith(".html")) chain.doFilter(request, response);
else{
return;
}

⑦ web項目中xml文件和html文件和jsp文件和Java文件是如何交互的

xml全稱是可擴展標記語言,是一種常用來結構化數據的數據載體,常用在互聯網的數據傳遞,以及文本文件的數據存儲上。你可以把他理解成一個數據載體。打個比方說想喝水(數據),有的人用杯子(數據載體),有的人用管子(數據載體),目的是為了喝水,途徑不一樣而已。xml和java交互是通過I/O或者http網路協議。
html全稱是超文本標記語言,超文本的意思是這個文件中不只能出現文本,還能出現多媒體信息。通俗的理解,他是一種能被瀏覽器認出的一組協議。這是一種靜態的展現方式。瀏覽器根據html規范,逐行解析html中的內容,並以html規范展現我們自定義的html文件的內容為我們常見的網站。打比方html是一種圖紙,瀏覽器是工人,工人(瀏覽器)根據圖紙(自定義的html文件)建好了一棟大樓(你我看到的網站),於是別人就能看到,並且使用大樓。html文件和java交互是通過http協議完成的。
jsp全稱是java伺服器頁面,是一種擴展過後的動態html,他彌補了html是靜態方式的不足,可以根據java端提供的數據來控制頁面展現的方式(html做不到)。jsp和java交互也是通過http協議完成的。

⑧ web.xml文件主要配置有哪些,都有什麼含義

①web.xml文件是用來配置:歡迎頁、servlet、filter等配置文件用的。當你的web工程沒用到這些時,你可以不用web.xml文件來配置你的web工程

web.xml的模式文件中定義的標簽並不是定死的,模式文件也是可以改變的,一般來說,隨著web.mxl模式文件的版本升級,裡面定義的功能會越來越復雜,

也即標簽元素的種類會越來越多,但有些是不常用的,我們只需記住一些常用的就可以了。

首先是定義頭和根元素

聲明為xml文件,版本為1.0,編碼為utf-8

聲明該文件的內容可以使用xsi的標簽庫

聲明標簽的使用范圍是被javaee的開發使用的

聲明可以使用的標簽庫和對應的具體的標簽庫版本地址。

web.xml的模式(Schema)文件中定義了多少種標簽元素,它就能擁有定義出來的那些功能

隨著web.mxl模式文件的版本升級,裡面定義的功能會越來越復雜,也即標簽元素的種類會越來越多.

定義項目的名稱.

項目名稱

歡迎頁面

servlet

配置springmvc DispatcherServlet( 前台控制器)-->example這個Servlet的名字是example,可以有多個DispatcherServlet,是通過名字來區分的。

async-supported

啟動一個新的線程去處理你的請求,完成之後調用你指定的回調函數來完成整個非同步操作。

一般的jsp是通過地址欄輸入一個地址,或者提交表單的方式發送請求的,這樣網頁都會被刷新。但是如果你在jsp頁面發送一個ajax請求的話,跟前兩種不同,

後台會返回給jsp頁面內容,頁面不會直接刷新,這樣可以把返回的數據寫在頁面的div中,這樣就完成了頁面的局部刷新。

舉個例子,你做一個查詢功能,頁面上有查詢條件和查詢結果顯示區域,你可以點查詢按鈕的時候通過ajax非同步發送你的查詢條件,

而你得到後台返回的查詢結果後,更新你的jsp頁面的查詢結果,jsp的其他部分,比如查詢條件,都沒有更新,jsp沒有刷新,而是更新了查詢結果這一塊內容

  url-pattern   默認匹配所有請求Servlet攔截匹配規則可以自已定義1、攔截*.do、*.htm, 例如:/user/add.do,這是最傳統的方式,最簡單也最實用。不會導致靜態文件(jpg,js,css)被攔截。2、攔截/,例如:/user/add,可以實現現在很流行的REST風格。很多互聯網類型的應用很喜歡這種風格的URL。弊端:會導致靜態文件(jpg,js,css)被攔截後不能正常顯示。

監聽器

Listener獲取的是Web應用ServletContext(application)的配置參數。-為Web應用配置Listener的兩種方式: 使用@WebListener修飾Listener實現類即可 在web.xml文檔中使用進行配置。我們選擇web.xml這種配置方式,只有一個元素指定Listener的實現類.

②啟動WEB項目的時候,Tomcat容器首先會去它的配置文件讀取兩個節點listener和context-param。

然後Tomcat會創建一個ServletContext(application),WEB項目所有部分都將共享這個上下文

將applicationContext.xml存入ServletContext中

Tomcat容器根據class類路徑來創建監聽

上面這些都是在web項目還沒有完全啟動起來就完成的工作,而servlet是在第一次發起請求時被實例化的

而且一般不會被容器銷毀,並服務於多個用戶的請求.

web.xml的載入順序是: context-param-> listener -> filter -> servlet.

filter

Filter可認為是Servlet的「增強版」,因此Filter配置與Servlet的配置非常相似,需要配置兩部分:配置Filter名稱和Filter攔截器URL模式。區別在於Servlet通常只配置一個URL,而Filter可以同時配置多個請求的URL。配置Filter有兩種方式:

在Filter類中通過Annotation進行配置。

在web.xml文件中通過配置文件進行配置。

①網路

②http://blog.csdn.net/believejava/article/details/43229361

1.在web.xml里配置監聽器、過濾器、攔截器,書寫順序有沒有什麼要求?

根據網上資料來分析,應該是沒有書寫順序的要求,容器會按照自己的載入方式去載入順序.

2.監聽器是必須要配置的嗎?

不是必須要配置.

3假設配置了多個listener,那麼會先載入哪個listener

如果有多個listener的情況下,我們可以根據自己的需要去手動設置先去載入哪個listener.

今天的分享就到這里啦,歡迎大家點贊、轉發、留言、拍磚~

技能樹.IT修真院

「我們相信人人都可以成為一個工程師,現在開始,找個師兄,帶你入門,掌控自己學習的節奏,學習的路上不再迷茫」。

這里是技能樹.IT修真院,成千上萬的師兄在這里找到了自己的學習路線,學習透明化,成長可見化,師兄1對1免費指導。快來與我一起學習吧~

http://www.jnshu.com/login/1/14708688

PPT :  https://ptteng.github.io/PPT/PPT-java/Java-task2-webxml.html#/

⑨ 簡述web開發中HTTP、HTML、XML、JAVAScript等的概念

HTTP:超文本傳輸協議,在網路開始發展之初,被設計來發布和接收HTML(超文本標記語言)頁面。已經成為目前應用最廣泛的網路協議。

HTML:即超文本標記語言或超文本鏈接標示語言,是目前網路上應用最為廣泛的語言,也是構成網頁文檔的主要語言。HTML文本是由HTML命令組成的描述性文本,HTML命令可以說明文字、圖形、動畫、聲音、表格、鏈接等。HTML的結構包括頭部(Head)、主體(Body)兩大部分,其中頭部描述瀏覽器所需的信息,而主體則包含所要說明的具體內容。

XML:即可擴展標記語言,它與HTML一樣,都是SGML(Standard Generalized Markup Language,標准通用標記語言)。Xml是Internet環境中跨平台的,依賴於內容的技術,是當前處理結構化文檔信息的有力工具。擴展標記語言XML是一種簡單的數據存儲語言,使用一系列簡單的標記描述數據,而這些標記可以用方便的方式建立,雖然XML佔用的空間比二進制數據要佔用更多的空間,但XML極其簡單易於掌握和使用。

JAVASCRIPT:是一種由Netscape的LiveScript發展而來的原型化繼承的面向對象的動態類型的區分大小寫的客戶端腳本語言,主要目的是為了解決伺服器端語言,比如Perl,遺留的速度問題,為客戶提供更流暢的瀏覽效果。當時服務端需要對數據進行驗證,由於網路速度相當緩慢,只有28.8kbps,驗證步驟浪費的時間太多。於是Netscape的瀏覽器Navigator加入了Javascript,提供了數據驗證的基本功能。

如何配置html、servlet、web.xml

<servlet>元素是配置Servlet所用的元素。
<servlet-mapping>元素在Servlet和URL樣式之間定義一個映射,即servlet類提供一個url,在地址欄輸入對應的映射路徑就可以訪問你的servlet。

下面給出一段配置代碼:
<servlet>
<servlet-name>ServletName</servlet-name>
<servlet-class>xxxpackage.xxxServlet</servlet-class> <!--Servlet的類-->
<init-param> <!--初始化一個變數,可看成全局變數,可省略-->
<param-name>參數名稱</param-name> <!--變數名稱-->
<param-value>參數值</param-value> <!--變數值-->
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>ServletName</servlet-name>
<url-pattern>/aaa/xxx</url-pattern> <!--映射的url路徑 -->
</servlet-mapping>
在地址欄中輸入http://localhost:8080/web-App/aaa/xxx就可以訪問了。
預設Servlet
1.如果某個Servlet的映射路徑僅僅為一個正斜杠(/),那麼這個Servlet就成為當前Web應用程序的預設Servlet。
2.凡是在web.xml文件中找不到匹配的<servlet-mapping>元素的URL,它們的訪問請求都將交給預設Servlet處理,也就是說,預設Servlet用於處理所有其他Servlet都不處理的訪問請求。
3.在<tomcat的安裝目錄>\conf\web.xml文件中,注冊了一個名稱為org.apache.catalina.servlets.DefaultServlet的Servlet,並將這個Servlet設置為了預設Servlet。
當訪問Tomcat伺服器中的某個靜態HTML文件和圖片時,實際上是在訪問這個預設Servlet。