JavaWeb笔记03-Servlet
生活随笔
收集整理的這篇文章主要介紹了
JavaWeb笔记03-Servlet
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
今日內容
Servlet
概念
步驟
執行原理
生命周期
Servlet3.0注解配置
Servlet的體系結構
- Servlet – 接口
- GenericServlet – 抽象類:將Servlet接口中其他方法做了默認空實現,只將service()方法作為抽象
- 將來定義Servlet類時候,可以繼承GenericServlet,實現service()方法即可
- HTTPServlet – 抽象類:對http協議的一種封裝,簡化操作
- 定義類繼承httpservlet方法
- 腹瀉doGet/doPost方法
- GenericServlet – 抽象類:將Servlet接口中其他方法做了默認空實現,只將service()方法作為抽象
Servlet相關配置
- 一個Servlet可以定義多個訪問路徑:@WebServlet({"/d4","/dd4","/ddd4"})
- 路徑定義規則:
- /xxx
- /xxx/xxx
- *.do*說白了就是通配符,這里注意前面不要加/
HTTP:
概念:Hyper Text Transfer Protocol 超文本傳輸協議
- 傳輸協議: 定義了,客戶端和服務器端通信時,發送數據的格式
- 特點:
- 基于TCP/IP 的高級協議
- 默認端口:80
- 基于請求/響應模型的:一次請求對應一次響應
- 無狀態的:每次請求之間相互獨立,不能交互數據
- 歷史版本:
- 1.0: 每一次請求響應都會建立新的鏈接
- 1.1: 復用
請求消息數據格式:
- 請求方式 請求url 請求協議/版本 GET/login.html HTTP/1.1
- 請求方式:
- HTTP協議有7種請求方式,常用的有2種
- GET:
- 請求參數在請求行中,在url后
- 請求的url長度有限制的
- 不太安全
- POST:
- 請求參數在請求體中
- 請求的url長度沒有限制的
- 相對的安全(其實對于有心人來說,都是能看到的)
- HTTP協議有7種請求方式,常用的有2種
- 請求頭名稱:請求頭值
- 常見的請求頭:
- User-Agent: 瀏覽器告訴服務器,我訪問你使用的瀏覽器版本信息
- 可以在服務端獲取該頭的信息,解決瀏覽器的兼容性問題
- Referer:http://localhost/login.html
- 告訴服務器,我(當前的請求)從哪里來?
- 作用:
- 防盜鏈:
- 統計工作
- 告訴服務器,我(當前的請求)從哪里來?
- 空行,用于分割POST的請求頭和請求體的
- 封裝POST請求消息的請求體的
- get方式的沒有請求體的
- post方式的請求體是帶了一些參數username=zhangsan
響應消息數據格式:
登錄
請求和響應的過程
request:
- GET/day14/demo1?name=zhangsan HTTP/1.1
- 方法:
- 獲取請求方式:GET
- String getMethod();
- 獲取虛擬目錄:day14
- String getContextPath()
- 獲取Servlet路徑:/demo1
- Stirng getServletPath
- 獲取get方式請求參數:name = zhangsan
- String getQueryString()
- 獲取請求URI:/day14/demo1
- String getRequestURI()
- StringBuffer getRequestURL():http://loaclhost/day14/demo1
- url:統一資源定位符:http://loaclhost/day14/demo1(中華人民共和國)
- uri:統一資源標識符:/day14/demo1(共和國)
我現在要說的是,uri比url大,同意吧,就像上面的比喻
- 獲取協議版本:HTTP/1.1
- String getProtocol()
- 獲取客戶機的IP地址
- String getRemoteAddr()
總結
以上是生活随笔為你收集整理的JavaWeb笔记03-Servlet的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: PPT制作技巧总结
- 下一篇: java 反射用法_Java 反射的概念