JSP+JavaBean+Servlet技術(MVC模型)

來源:互聯網
上載者:User

標籤:瀏覽器   網址   地址   基於   支援   形式   red   head   put   

一,Servlet開發
使用者在瀏覽器中輸入一個網址並斷行符號,瀏覽器會向伺服器發送一個HTTP請求。伺服器端程式接受這個請求,並對請求進行處理,然後發送一個回應。瀏覽器收到回應,再把回應的內容顯示出來。這種請求—響應模式就是典型的Web應用程式訪問過程。
       JavaWeb應用程式中所有的請求—響應都是由Servlet完成的。Servlet是JavaWeb的核心程式,所有的網址最終都交給Servlet處理。Servlet並沒有main之類的執行方法。當使用者訪問伺服器的時候,Tomcat是通過調用Servlet的某些方法來完成整個處理過程的。 
 Servlet是什麼
   一個Servlet程式就是一個實現了特殊介面的Java類,它由支援Servlet的Web伺服器調用和啟動運行。一個Servlet程式負責處理它所對應的一個或一組URL地址的訪問請求,並接收用戶端發出的訪問請求資訊和產生響應內容。


Servlet程式可以完成普通Java程式所能完成的大多數任務:,
1,擷取用戶端通過HTML的FORM表單提交的資料和URL後面的參數資訊
2,建立對用戶端的響應資訊內容,

3,訪問伺服器端的檔案系統
4,串連資料庫並開發基於資料庫的應用,

5,調用其它的Java類
Servlet工作流程
瀏覽器提交的請求是遵循HTTP協議的文本。這段文本由伺服器也就是Tomcat接收並解析,封裝成了HttpServletRequest類型的request對象。所有的HTTP頭資料都可以通過request相應的方法查詢到。Tomcat同時把輸出資料流封裝成為HttpServletResponse類型的response對象,通過設定response對象可以控制輸出的內容。在請求—響應的這個過程中,Tomcat把request對象、response對象作為參數,調用Servlet的相應方法,例如doPost(request,response)、doGet(request,response)等。

Servlet介面
Servlet是一種實現了javax.servlet.Servlet介面的類。Servlet介面規定了特定的方法來處理特定的請求。Servlet規範是建立在HTTP規範基礎上的。HTTP 1.1 規範支援OPTIONS、GET、POST、HEAD、PUT、DELETE、TRACE等7中訪問方式,其中最常用的就是GET和POST了。

GET:表示查詢資訊,URL中可以附帶少量的參數資訊,但是URL總長度不能超過255個字元,並且參數會顯示在瀏覽器地址欄。
POST:表示提交資訊,一般用於提交大資料資訊或者檔案,提交的內容不受長度限制,並且不會顯示在瀏覽器地址欄中。

 

Servlet工作流程
利用Servlet完成的Web應用的實際工作流程是通過Tomcat伺服器發布服務,用戶端與伺服器端之間的互動遵循Http協議完成的。具體工作流程如下:

用戶端瀏覽器向伺服器端發送請求。
1,伺服器端由Tomcat伺服器提供的Servlet容器解析接收到的請求。
2,通過Web應用程式的設定檔web.xml,解析到對應執行的Servlet。
3,Servlet完成用戶端發送的請求邏輯,並完成向用戶端發送的響應內容。
4,由Tomcat伺服器提供的Servlet容器向用戶端瀏覽器進行響應。

一,Java Web應用設計模式:

 

1)採用JSP+JavaBean的技術

JSP獨自響應請求並發送處理結果給使用者,資料通過JavaBean來處理,是JSP技術發展初期經常採用模式1,適用於一些小型開發項目。

 

2)採用JSP+JavaBean+Servlet技術(MVC模型)

MVC(Model-View-Controller)模型,適用於中型以上開發項目

“模型-視圖-控制器”關係圖:

 

MVC構架設計圖:

 

 

二,Servlet中的請求轉寄機制

Web應用中,常由Servlet來充當調度員的角色,把這樣的Servlet叫控制器,可以將請求轉寄給另一個Servlet或JSP頁面,由它們對請求作進一步處理,併產生對請求的響應。Servlet中實現請求轉寄方式:

1)共用一個request:request.getRequestDispacher(“xxx.jsp/xxxservlet”).forword(requet,response);

2)重新導向:

Request.sendRedict(“xxx.jsp/xxxservlet””);

 

三,運用MVC模式開發WEB應用的步驟

1)定義bean來表示資料和封裝商務邏輯

a)定義資料Bean來表示需要顯示給使用者的結果

b)定義業務Bean來封裝商務邏輯,BeanDao.

2)使用Servlet處理使用者請求

a)根據使用者請求,將資料的處理結果寫入bean,並將其存於請求或會話的上下文中

b)通過請求轉寄的形式,將請求轉寄到合適的頁面,servlet不需要建立任何輸出,輸出由JSP頁面完成

2)JSP頁面輸出結果: 從bean中擷取資料輸出

 

總之:

① JSP作介面

② Servlet接受使用者請求,並作初步處理,然後將請求進行轉寄

③業務處理藉助Bean

JSP+JavaBean+Servlet技術(MVC模型)

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.