tomcat地址
規則:http://localhost:8080/項目名/文件名.html
http://localhost:8080/WebProject/test.html
解決Tomcat 8080端口被占用的情況:
cmd中輸入netstat -ano
最后一列的8080,找到PID,然后在任務管理器中,關掉相應進程
或者直接在IDEA中設置端口為808x(其他端口)
tomcat亂碼
-Dfile.encoding=UTF-8
修改代碼之后每次Redeploy
Tomcat提示未配置關閉端口
嚴重 [main] org.apache.catalina.startup.Catalina.stopServer 未配置關閉端口。通過OS信號關閉服務器。服務器未關閉。
解決方法:
找到Tomcat的安裝目錄,進入conf配置文件夾中,找到箭頭所指文件
打開之后,找到如圖所指位置,將其修改為8005即可
Tomcat安裝目錄
Tomcat安裝目錄中包含一系列的子目錄,這些子目錄分別用于存放不同功能的文件,接下來針對這些子目錄進行簡單介紹,具體如下。
(1)bin:用于存放Tomcat的可執行文件和腳本文件(擴展名為bat的文件,批處理命令行),如tomcat7.exe、startup.bat。
(2)conf:用于存放Tomcat的各種配置文件,如web.xml(web應用)、server.xml(服務器)。
(3)lib:用于存放Tomcat服務器和所有Web應用程序需要訪問的JAR文件,Tomcat開源,本身的源碼在lib目錄下
(4)logs:用于存放Tomcat的日志文件。
(5)temp:用于存放Tomcat運行時產生的臨時文件,本件過大,必須緩存,放在此處。
(6)webapps:Web應用程序的主要發布目錄,通常將要發布的應用程序放到這個目錄下(想要獨立掛載在Tomcat下的應用,之前是在IDEA開發工具中掛載)
(7)work:Tomcat的工作目錄,JSP編譯生成的Servlet源文件和字節碼文件放到這個目錄下。
安裝成功:
Tomcat服務器啟動后,在瀏覽器的地址欄中輸入http://localhost:8080或者http://127.0.0.1:8080(localhost和127.0.0.1都表示本地計算機)訪問Tomcat服務器,如果瀏覽器中的顯示界面如圖所示,則說明Tomcat服務器安裝成功了。
Tomcat端口
Tomcat監聽端口為8080,mysql為3306
可以直接在conf-server.xml中修改端口號
server.xml文件中有一個元素,該元素中有一個port屬性,這個屬性就是用于配置Tomcat服務器監聽的端口號。當前port屬性的值為8080,表示Tomcat服務器使用的端口號是8080
。Tomcat監聽的端口號可以是0~65 535之間的任意一個整數,如果出現端口號被占用的情況,就可以修改這個port屬性的值來修改端口號。
XML
可擴展性標簽
新建了一個xml文件,沒有定義標簽,不能寫標簽,就會報錯
xml與html區別:
都是樹結構
瀏覽器不能識別xml,可以識別html
(1)HTML被設計出是用來顯示數據的,XML被設計出是為了傳輸和存儲數據。
(2)HTML是不區分大小寫的,而XML是嚴格區分大小寫的。
(3)HTML可以有多個根元素,而格式良好的XML有且只能有一個根元素。
(4)HTML中,空格是自動過濾的,而XML中空格則不會自動刪除。
(5)HTML中的標記是預定義的,而XML中的標記可以根據需要自己定義,并且可擴展。
URI與URL
1)
URL:統一資源定位符(Uniform Resource Locator,縮寫:URL),是對資源的引用和訪問該資源的方法。俗稱網址,就是瀏覽器地址欄里面的。
2)
URI:統一資源標志符(Uniform Resource Identifier,縮寫:URI),提供了一種識別資源的方法。但與 URL 不同的是,URI 不提供定位所述資源的方法。
3)
URI 的最常見的形式是統一資源定位符(URL),經常指定為非正式的網址。由此,可以看出 URI 是 URL 的超集,并且每個 URL 本質上也是一個 URI。
Schema約束
比DTD約束更強
引入Schema約束
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"version="4.0">
<?xml version="1.0" encoding="UTF-8"?>
<!--引入了一些約束,引入了一套標簽-->
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"version="4.0">
</web-app>
名稱空間
1)以“xmlns”或者以“xmlns:”作為前綴
2)不同約束用了同一套標簽,但不同命名,所以使用名稱空間解決命名沖突
3)如果有兩個URI并且其組成的字符完全相同,就可以認為它們標識的是同一個名稱空間。
Http協議
1)超文本傳輸協議(HTTP)是用于從萬維網服務器傳輸超文本到本地瀏覽器的傳送協議。超文本傳輸協議(HTTP)是面向事務的,應用層協議規定了在瀏覽器和服務器之間的請求和響應的格式和規則,它是萬維網上能夠可靠交換文件的重要基礎。
2)位于應用層
3)http特點
(1) 支持客戶端(瀏覽器就是一種Web客戶端)/服務器模式。
(2) 簡單快速:客戶端向服務器請求服務時,只需傳送請求方式和路徑。常用的請求方式有GET、POST等,每種方式規定了客戶端與服務器聯系的類型不同。由于HTTP簡單,使得HTTP服務器的程序規模小,因而通信速度很快。
(3) 靈活:HTTP允許傳輸任意類型的數據,正在傳輸的數據類型由Content-Type加以標記。
(4) 無狀態:HTTP是無狀態協議。無狀態是指協議對于事務處理沒有記憶能力,如果后續處理需要前面的信息,則它必須重傳,這樣可能導致每次連接傳送的數據量增大。
HTTP請求方式
在HTTP的請求消息中,請求方式有GET、POST、HEAD、OPTIONS、DELETE、TRACE、PUT和CONNECT共8種,每種方式都指明了操作服務器中指定URI資源的方式,它們表示的含義如表所示。
最常用的為: GET和POST方式
Get方式:
POST方式:
HTTP請求消息頭
在HTTP請求消息中,請求行之后,便是若干請求消息頭。請求消息頭主要用于向服務器端傳遞附加消息,例如,客戶端可以接收的數據類型、壓縮方法、語言以及發送請求的超鏈接所屬頁面的URL地址等信息
常用的請求頭字段:
HTTP響應狀態行
HTTP響應狀態行位于響應消息的第一行,它包括三個部分,分別是HTTP版本、一個表示成功或錯誤的整數代碼(狀態碼)和對狀態碼進行描述的文本信息,具體示例如下:
上面的示例就是一個HTTP響應消息的狀態行,其中HTTP 1.1是通信使用的協議版本(200是狀態碼),OK是狀態描述,說明客戶端請求成功。需要注意的是,請求行中的每個部分需要用空格分隔,最后要以回車換行結束。
HTTP請求狀態碼:
狀態代碼由三位數字組成,表示請求是否被理解或被滿足。HTTP響應狀態碼的第一個數字定義了響應的類別,后面兩位沒有具體的分類,第一個數字有5種可能的取值,具體介紹如下所示。
1,3開頭為中間狀態
1xx: 表示請求已接收,需要繼續處理。
2xx: 表示請求已成功被服務器接收、理解并接受。(正常成功的狀態)
3xx: 為完成請求,客戶端需進一步細化請求。
4xx: 客戶端的請求有錯誤。
5xx: 服務器端出現錯誤。
常見狀態碼: