web application is that it is an application that is accessible from the web.
一個一般的web應用例子就是網站提供免費的電子郵件服務。一個web應用的主要好處就是就是簡單。能讓使用者通路程式,而使用者隻需要一個浏覽器。
Web應用是由web元件構成的。web元件完成特定的任務。
對web資源進行的一種分類是:主動和被動。一個資源是被動的,當它自己不能擁有任何處理過程。主動的對象擁有處理的能力。例如浏覽器向web伺服器查找一個html檔案,這個html檔案就是被動資源;相反,一個servlet就是一個主動資源。被動資源也叫靜态資源,因為它的内容不因為請求而改變。
Servlet容器是應用伺服器的一部分。
應用伺服器還可能提供J2EE元件,例如EJB容器,JNDI伺服器,JMS伺服器。
一個web應用是用部署描述器來描述的。它包含了web應用中所有動态元件的描述資訊。它還定義了web應用的安全性。應用伺服器用部署描述器來初始化web應用的元件,并使它們對客戶有效。
URI,URL和URN的差別:
URI(統一資源辨別符 Uniform Resource Identifer):URI是用來辨別所有資源的字元串。辨別資源并不意味着我能取回資源。URI是URL和URN的超集。
URL(統一資源定位符Uniform Resource Locator):URI辨別一般的Internet協定。例如HTTP,FTP。URL不是正式術語,他不能在技術規範上使用。
URN(Uniform Resource Name):URN是一種辨別符,他能唯一辨別一個資源但不能指明個如何通路資源。
請求的方法名:
PUT ,OPTION ,DELETE ,TRACE ,CONTENT ,GET ,POST ,HEAD
GET :的意思是”get the resource identified by this URI” 。這種資源通常是被動資源,當隻有少數或沒有參數需要傳遞時,GET請求也可以請求主動資源,如:
GET /servlet/helloServlet?userid=john HTTP/1.0
HEAD:HTTP HEAD請求被用來取回關于資源的meta-information。是以,對HEAD請求的相應隻包括header。HEAD請求的格式和GET請求的一樣。
HEAD一般被用來檢查資源在發送到用戶端前伺服器最後一次被修改的時間。一個HEAD請求可以節省很多帶寬,尤其是如果資源很大時。因為如果用戶端已經擁有最新的版本的時候,實際的資源不會再發送給用戶端。
POST:POST被用來發送需要被處理的資料到伺服器.它的意思是:”post the data to the active resource identified by this URI”。
總結:web應用是一系列web元件的集合,這些元件完成特定的任務,并允許使用者通過使用浏覽器通路業務邏輯。