JavaWeb知識點總結一

来源:http://www.cnblogs.com/shouce/archive/2016/04/21/5415495.html
-Advertisement-
Play Games

常見的狀態碼以及其含義 一些常見HTTP狀態碼為: 200 -- 伺服器成功返回網頁 400 -- 伺服器不理解請求的語法 404 -- 請求的網頁不存在 503 -- 服務不可用 常見HTTP狀態碼大全 1xx(臨時響應):表示臨時響應並需要請求者繼續執行操作的狀態代碼。 http狀態碼 100( ...


常見的狀態碼以及其含義

一些常見HTTP狀態碼為:

200 -- 伺服器成功返回網頁

400 -- 伺服器不理解請求的語法

404 -- 請求的網頁不存在

503 -- 服務不可用

常見HTTP狀態碼大全

1xx(臨時響應):表示臨時響應並需要請求者繼續執行操作的狀態代碼。

http狀態碼 100(繼續) 請求者應當繼續提出請求。 伺服器返回此代碼表示已收到請求的第一部分,正在等待其餘部分。

http狀態碼 101(切換協議) 請求者已要求伺服器切換協議,伺服器已確認並準備切換。

2xx (成功):表示成功處理了請求的狀態代碼。

http狀態碼 200(成功) 伺服器已成功處理了請求。 通常,這表示伺服器提供了請求的網頁。
http狀態碼 201(已創建) 請求成功並且伺服器創建了新的資源。
http狀態碼 202(已接受) 伺服器已接受請求,但尚未處理。
http狀態碼 203(非授權信息) 伺服器已成功處理了請求,但返回的信息可能來自另一來源。
http狀態碼 204(無內容) 伺服器成功處理了請求,但沒有返回任何內容。
http狀態碼 205(重置內容) 伺服器成功處理了請求,但沒有返回任何內容。
http狀態碼 206(部分內容) 伺服器成功處理了部分 GET 請求。

3xx (重定向):表示要完成請求,需要進一步操作。 通常,這些狀態代碼用來重定向。
http狀態碼 300(多種選擇) 針對請求,伺服器可執行多種操作。 伺服器可根據請求者 (user agent) 選擇一項操作,或提供操作列表供請求者選擇。
http狀態碼 301(永久移動) 請求的網頁已永久移動到新位置。 伺服器返回此響應(對 GET 或 HEAD 請求的響應)時,會自動將請求者轉到新位置。
http狀態碼 302(臨時移動) 伺服器目前從不同位置的網頁響應請求,但請求者應繼續使用原有位置來進行以後的請求。
http狀態碼 303(查看其他位置) 請求者應當對不同的位置使用單獨的 GET 請求來檢索響應時,伺服器返回此代碼。
http狀態碼 304(未修改) 自從上次請求後,請求的網頁未修改過。 伺服器返回此響應時,不會返回網頁內容。
http狀態碼 305(使用代理) 請求者只能使用代理訪問請求的網頁。 如果伺服器返回此響應,還表示請求者應使用代理。
http狀態碼 307(臨時重定向) 伺服器目前從不同位置的網頁響應請求,但請求者應繼續使用原有位置來進行以後的請求。

4xx(請求錯誤):這些狀態代碼表示請求可能出錯,妨礙了伺服器的處理。

http狀態碼 400(錯誤請求) 伺服器不理解請求的語法。
http狀態碼 401(未授權) 請求要求身份驗證。 對於需要登錄的網頁,伺服器可能返回此響應。
http狀態碼 403(禁止) 伺服器拒絕請求。
http狀態碼 404(未找到) 伺服器找不到請求的網頁。
http狀態碼 405(方法禁用) 禁用請求中指定的方法。
http狀態碼 406(不接受) 無法使用請求的內容特性響應請求的網頁。
http狀態碼 407(需要代理授權) 此狀態代碼與 401(未授權)類似,但指定請求者應當授權使用代理。
http狀態碼 408(請求超時) 伺服器等候請求時發生超時。
http狀態碼 409(衝突) 伺服器在完成請求時發生衝突。 伺服器必須在響應中包含有關衝突的信息。
http狀態碼 410(已刪除) 如果請求的資源已永久刪除,伺服器就會返回此響應。
http狀態碼 411(需要有效長度) 伺服器不接受不含有效內容長度標頭欄位的請求。
http狀態碼 412(未滿足前提條件) 伺服器未滿足請求者在請求中設置的其中一個前提條件。
http狀態碼 413(請求實體過大) 伺服器無法處理請求,因為請求實體過大,超出伺服器的處理能力。
http狀態碼 414(請求的 URI 過長) 請求的 URI(通常為網址)過長,伺服器無法處理。
http狀態碼 415(不支持的媒體類型) 請求的格式不受請求頁面的支持。
http狀態碼 416(請求範圍不符合要求) 如果頁面無法提供請求的範圍,則伺服器會返回此狀態代碼。
http狀態碼 417(未滿足期望值) 伺服器未滿足”期望”請求標頭欄位的要求。

5xx(伺服器錯誤):這些狀態代碼表示伺服器在嘗試處理請求時發生內部錯誤。 這些錯誤可能是伺服器本身的錯誤,而不是請求出錯。

http狀態碼 500(伺服器內部錯誤) 伺服器遇到錯誤,無法完成請求。
http狀態碼 501(尚未實施) 伺服器不具備完成請求的功能。 例如,伺服器無法識別請求方法時可能會返回此代碼。
http狀態碼 502(錯誤網關) 伺服器作為網關或代理,從上游伺服器收到無效響應。
http狀態碼 503(服務不可用) 伺服器目前無法使用(由於超載或停機維護)。通常,這隻是暫時狀態。

http狀態碼 504(網關超時) 伺服器作為網關或代理,但是沒有及時從上游伺服器收到請求。
http狀態碼 505(HTTP 版本不受支持) 伺服器不支持請求中所用的 HTTP 協議版本。

請求協議的格式

  1. 請求方法 URI 協議/版本
  2. 請求頭:包含了許多有關的客戶端環境和請求正文的有用信息。例如,請求頭可以聲明瀏覽器所用的語言,請求正文的長度等等。
  3. 請求正文:請求頭和請求正文之間有一個空行,這個行非常重要,它表示請求頭已經結束,接下來的是請求正文。

user_agent包含的信息

user_agent是HTTP協議中的一部分,屬於頭域中的組成部分,user_agent也簡稱為UA。用較為普通的話來說,是一種訪問網站時提供你所使用的瀏覽器類型、操作系統及版本、CPU類型、瀏覽器渲染引擎、瀏覽器語言、瀏覽器插件等信息的標識。UA字元串在每次瀏覽器HTTP請求時發送到伺服器。

瀏覽器UA字串的標準格式為:瀏覽器標識(操作系統標識;加密等級標識;瀏覽器語言)渲染引擎標識 版本信息

http中常見的請求頭和響應頭分別有哪些,及其作用

請求頭: 
Accept: text/html,image/*(瀏覽器可以接收的類型) 
Accept-Charset: ISO-8859-1(瀏覽器可以接收的編碼類型) 
Accept-Encoding: gzip,compress(瀏覽器可以接收壓縮編碼類型) 
Accept-Language: en-us,zh-cn(瀏覽器可以接收的語言和國家類型) 
Host: www.it315.org:80(瀏覽器請求的主機和埠) 
If-Modified-Since: Mon, 6 Jul 2015 18:23:51 GMT(某個頁面緩存時間) 
Referer: http://www.it315.org/index.jsp(請求來自於哪個頁面) 
User-Agent: Mozilla/4.0 (compatible; MSIE 5.5; Windows NT 5.0)(瀏覽器相關信息) 
Cookie:(瀏覽器暫存伺服器發送的信息) 
Connection: close(1.0)/Keep-Alive(1.1)(HTTP請求的版本的特點) 
Date: Mon, 6 Jul 2015 18:23:51 GMT(請求網站的時間) 

響應頭: 
Location: http://www.it315.org/index.jsp(控制瀏覽器顯示哪個頁面) 
Server:apache tomcat(伺服器的類型) 
Content-Encoding: gzip(伺服器發送的壓縮編碼方式) 
Content-Length: 80(伺服器發送顯示的位元組碼長度) 
Content-Language: zh-cn(伺服器發送內容的語言和國家名) 
Content-Type: image/jpeg; charset=UTF-8(伺服器發送內容的類型和編碼類型) 
Last-Modified: Mon, 6 Jul 2015 18:23:51 GMT(伺服器最後一次修改的時間) 
Refresh: 1;url=http://www.it315.org(控制瀏覽器1秒鐘後轉發URL所指向的頁面) 
Content-Disposition: attachment; filename=aaa.jpg(伺服器控制瀏覽器發下載方式打開文件) 
Transfer-Encoding: chunked(伺服器分塊傳遞數據到客戶端)  
Set-Cookie:SS=Q0=5Lb_nQ; path=/search(伺服器發送Cookie相關的信息) 
Expires: -1(伺服器控制瀏覽器不要緩存網頁,預設是緩存) 
Cache-Control: no-cache(伺服器控制瀏覽器不要緩存網頁) 
Pragma: no-cache(伺服器控制瀏覽器不要緩存網頁)   
Connection: close/Keep-Alive(HTTP請求的版本的特點)   
Date: Mon, 6 Jul 2015 18:23:51 GMT(響應網站的時間) 

Tomcat伺服器的預設埠是多少?怎樣修改tomcat的埠

Tomcat伺服器的預設埠是8080;在tomcat下的\conf\server.xml中的Connector元素里的<Connector port=”8080”.....>把8080改成你想要的埠即可。

什麼是cookie? cookie有什麼作用?

Cookie 是一小段文本信息,伴隨著用戶請求和頁面在 Web 伺服器和瀏覽器之間傳遞。用戶每次訪問站點時,Web 應用程式都可以讀取 Cookie 包含的信息。

Cookie 為 Web 應用程式保存用戶相關信息提供了一種有用的方法。例如,當用戶訪問您的站點時,您可以利用 Cookie 保存用戶首選項或其他信息,這樣,當用戶下次再訪問您的站點時,應用程式就可以檢索以前保存的信息。

簡述JSP中動態include與靜態include的區別

動態include用jsp:include動作實現,<jsp:include page="included.jsp" flush="true" /> 它總是會檢查所含文件中的變化,適合用於包含動態頁面,並且可以帶參數;

靜態include用include偽碼實現,<% @ include file="included.htm" %>,不會檢查所含文件的變化,適用於包含靜態頁面。

簡述表單中POST和GET的區別

GET方法

資源類型 :主動的或被動的 

數據類型 :文本 

數據量 :最多255個字元。儘管HTTP協議並沒有限制查詢串的長度,某些瀏覽器和web伺服器可能不能處理超過255個字元的數據。 

可見性 :數據是URL的一部分,在瀏覽器的URL地址欄中用戶可見。 

緩存 :數據可以在瀏覽器的URL歷史中緩存。

POST方法

目標資源類型 :主動的

數據類型 :文本或二進位數據  

數據量 :沒有限制 。 

可見性 :數據不是URL的一部分而是作為請求的消息體發送,因此在瀏覽器的URL地址欄中對用戶不可見。

緩存 :數據不能在瀏覽器的URL歷史中緩存。

簡稱JSP的執行過程

首先,由客戶端瀏覽器向Web伺服器提出訪問JSP頁面的請求(Request),然後由JSP引擎負責將JSP轉換成Servlet,產生的servlet經過編譯後生成類文件,然後再把類文件載入到記憶體執行。最後,由Web伺服器將執行結果即(Response)給客戶端瀏覽器。

較JSP而言,Servlet有什麼優點,有什麼缺點?

優點:響應客戶端的請求,根據請求動態響應,最大的優點做為一個服務,控製程序的流向,過濾等。mvc中,控制就是servlet。

缺點:Servlet在表示邏輯上對於視圖的表示相對於JSP麻煩太多,在負責顯示工作完成並生成頁面上,JSP更優。


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 如: 讓它選中“統計今天”(控制項Name為cobListTime) 方法: 1.cobListTime.Text = cobListTime.Items[0].ToString();//預設選中第一個值 2.cobListTime.SelectedText = "統計今天"; 3.cobListTi ...
  • 分類:Unity、C#、VS2015 創建日期:2016-04-20 一、簡介 Unity引擎提供了豐富的組件和類庫,為游戲開發提供了非常大的便利,熟練掌握和使用這些API,對於游戲開發的效率提高很重要。 這一節我們主要學習Transform的基本用法。本節例子的運行效果如下: 二、Transfor... ...
  • 數據透視表/圖通過對數據進行過濾、排序、分類彙總等,將結果生成彙總表格或圖表,幫您分析、組織、展示數據,從而提高工作效率並減少錯誤。 Excel 的數據透視表功能強大,那麼,我們自己開發的系統中,是否能嵌入同樣的功能? 當然可以! 葡萄城 ComponentOne 產品線的ComponentOne ...
  • ...
  • 1.開發IDE:Spring Tool Suite(自帶maven插件) 下載地址https://spring.io/tools/sts/all 在STS.ini配置信息中加下麵一行 保證編碼格式為utf-8 -Dfile.encoding=UTF-8 2.jdk:java 1.8 下載地址http... ...
  • php構造函數是對象創建完成後,第一個自動調用的方法,析構函數是當對象被釋放之前最後一個自動調用的方法。本文章向碼農介紹php構造函數與析構函數。 php構造函數 1.是對象創建完成後,“第一個”“自動調用”的方法 2.構造方法的定義,方法名是一個固定的, 在php4中:和類名相同的方法就是構造方法 ...
  • ...
  • 前幾天看了開源的XML文件解析器TinyXml,它是怎麼實現解析的沒怎麼看懂,於是決定自己實現一個,反正最近不忙。先命名為TXml。現在完成瞭解析和查詢功能,全部代碼加起來不到1000行,將會繼續完善它。源碼必共用 先簡單說一下我的思路: 1:讀取XML文件信息,並存入一個字元數組中; 2:遍曆數組 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...