第一章 Java Web工作原理

第一章 Java Web工作原理

一:在本章我們將學到如下的內容

》HTTP協議原理

》服務器端Web編程原理

》Servlet與Web容器

》Java Web應用程序的組成

》Tomcat介紹

 

一:1.1解析HTTP協議

HTTP:超文本傳輸協議(HyperText Transfer Protocol)

HTTP是一種無狀態的協議,意思是指在Web瀏覽器和Web服務器之間不需要建立持久的連接。

HTTP是遵循請求/響應(Request/Response)模型的。

HTTP處理流程:

 

 

1.1.1建立連接

在java底層代碼中是這樣實現的,子不過瀏覽器已經幫我們做了!

1.1.2 發送請求信息  一旦建立的TCP連接,Web瀏覽器就會向Web服務器發送請求命令。HTTP協議將請求封裝成HTTP請求,他包括請求行,請求頭,空行,消息體。

1.1.3 回送響應信息

1.1.4 關閉連接

 

1.2 Web服務器的缺陷;

只能向客戶端提供靜態網頁內容
增加一個輔助應用生成動態頁面 

輔助的在服務器端進行註冊,根據參數查找並運行。

1.3 服務器端網頁編程

建動態服務器端內容的過程
–CGI技術
–微軟的ASP和ASP.NET技術
–基於Java的Servlet/JSP技術
 
 
1)CGI技術
CGI即通用網關接口(Common Gateway Interface)
最大優點是它可以用Shell、Perl、C、PHP、Python等編寫  
但是CGI技術也有缺陷:

每次請求就打開一個CGI進程,嚴重消耗服務器資源。極大地限制了一個服務器可以支持的併發 CGI用戶數量 。

2)java的解決法案

 

    Web容器;

Web容器負責管理和運行Servlet
容器對Servlet的支持包括
–通信支持
–生命週期管理
–多線程支持
–JSP支持

-處理安全性

    Servlet

1:Servlet是常規的Java代碼。代碼中用了一些新的API,但是不涉及新的語法。

2:Servlet代碼中有我們不熟悉的重要語句。Servlet不屬於J2SE,它屬於單獨的規範。

3:Servlet對標準類(HttpServlet)進行了擴展。

4:Servlet沒有main()方法。

如:

 View Code

 

Servlet主要任務

讀取客戶端發送的顯式和隱式數據
生成結果
向客戶端發送顯式數據(即文檔)和隱式數據(HTTP響應數據) 
 
Servlet規範;
規範只定義了一個容器必須實現的標準功能
Servlet容器有很多不同的實現
–Tomcat
–Jboss
–WebLogic
–WebSphere
–Oracle9i AS 
 
    Servlet與Web容器配合處理請求和響應

 

1)客戶端向Web服務器發起一個HTTP請求。 

2)HTTP請求被Web服務器接受,如果請求的是靜態頁面,則由Web服務器負責處理。如果請求的是Java Web組件(Servlet或者JSP),則移交給Web容器。Web容器可以在主機的同一個進程、不同的進程或其他的Web服務主機的進程中啓動。

3)Web容器根據Servlet的配置文件確定調用的具體Servlet類,並把request對象、response對象傳給它。

4)Servlet通過request對象知道客戶端的使用者是誰,客戶的請求信息是什麼和其他的一些信息。Servlet處理完請求後把要返回的信息放入response對象返回到客戶端。 

5)一旦Servlet完成了請求的處理,Web容器就會刷新response,把控制權返回給web服務器。

 

1.4 Java Web應用程序的組成

   

–配置文件
–靜態文件和JSP
–類文件和包 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章