JAVA基礎篇—Servlet小結

來源:互聯網
上載者:User

標籤:邏輯   整合通訊   lte   而且   全域變數   ice   url   uri   伺服器端   

一、get請求和post請求的區別:
1.get請求是通過url傳遞參數,post請求是通過請求體傳遞參數的
2.get請求最多允許傳遞255個字元,對長度有限制,所以資料比較大的時候我們使用post請求,尤其是做上傳的時候用post請求!
3.get請求我們在瀏覽器上是可以看到請求參數的,而post請求在瀏覽器地址欄中是看不到請求參數的!

4.在表單中一般我們都使用post請求,除了在表單中,頁面中的其它地方基本上都是使用get請求!

二、servlet是web的三大組件之一;web的三大組件是指:Servlet、Filter、Listener

三、生命週期

servlet是由tomcat伺服器來管理的!

servlet生命週期:是指servlet對象由產生到銷毀的過程!

servlet生命週期涉及的幾個方法:
1.構造器方法:只會在第一次訪問這個servlet的時候調用一次,調用一次就說明servlet是單例的,但是servlet是多線程的,
非安全執行緒的,也就是說在servlet中我們盡量不要在service方法中操作全域變數!

2.init方法:init方法只會在第一次訪問servlet的時候調用一次,對servlet對象進行初始化操作!

3.service:service方法會在每次訪問這個servlet的時候都調用一次,而且我們的商務邏輯也是寫在這個service方法!

4.destroy方法::destroy方法只會在我們的項目卸載的時候調用一次,也就是說在伺服器關閉的時候會在伺服器關閉的時候調用一次!

四、轉寄和重新導向

轉寄:當瀏覽器向伺服器發送請求的時候,伺服器自己不處理,而是調用其它的web資源進行處理!

重新導向:當瀏覽器向伺服器發送請求的時候,伺服器返回給瀏覽器一個特殊的響應,這個特殊的響應告訴瀏覽器再向另一個地址發送一個請求!

轉寄和重新導向的區別:
                   發生在瀏覽器端還是伺服器   瀏覽器的請求次數    瀏覽器地址欄是否發生變化   瀏覽器是否能夠感知到
轉寄[request]      發生在伺服器端                   1                                不發生變化                          感知不到
重新導向[response]  發生在瀏覽器端                 2                                 發生變化                          能感知到!

五、編碼問題分析及請求編碼

通訊雙方在進行通訊的時候,實際上是將通訊的內容【資訊】是按照一定的規則轉化為二進位進行通訊的

而這個一定的規則就是字元的編碼:ascii,gb2312,gbk,iso8859-1,utf-8;

在請求到達的時候,另一方就需要解碼!

亂碼原因:
通訊雙方的編碼方式和解碼方式不一致造成的,
解決辦法:
整合通訊雙方的編碼方式和解碼方式,都使用utf-8編碼!

編碼分類:
請求編碼
瀏覽器編碼---》伺服器解碼iso8859-1
響應編碼
伺服器編碼----》瀏覽器解碼
伺服器端預設使用的是iso8859-1編碼,而瀏覽器預設使用的是gb2312,當然我們也可以在頁面中告訴瀏覽器用什麼編碼方式!


get請求:
統一瀏覽器和伺服器端的編碼格式為utf-8編碼:在server.xml檔案的connector標籤中指定編碼格式為utf-8編碼:URIEncoding="utf8"
post請求!
我們可以在post方法中在第一次擷取請求參數之前通過request.setCharacterEncoding("utf-8");來設定解碼格式!

 

JAVA基礎篇—Servlet小結

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.