javaservlet

一、WEB工程結構

(一)  http協議:

1、  超文本傳輸協議

2、  請求響應機制:request/response

3、  httpServletRequest/httpServletResponse

(二)  簡介

1、  B/S結構:瀏覽器/服務器(部署比較簡單)

2、  C/S結構:客戶端/服務器

(三)  應用程序思想

1、放到一個不同層次結構的目錄

(四)  目的

1、  組織

2、  可攜帶

3、  分離性

(五)  Web工程結構

1.      JSP和常規Web內容

2.      Servlets:放在WEB-INF/classes目錄下

3.      JAR文件:WEB-INF/lib

4.      Web.xml:WEB-INF

5.      標籤庫描述文件(TLD文件)

6.       

(六)  WEB工程結構圖示

(七)  Web.xml文件

1、  作用:控制WEB應用程序的行爲。Web工程啓動時,首先讀取配置文件

2、  功能:

(1)      聲明

(2)      自定義

(3)      初始化參數

(4)      預加載頁面

 

(八)  實例

二、Servlet簡介

(一)  動態創建Web頁面

1、  用戶提交數據

2、  Web頁面的數據頻繁改變

3、  頁面信息來自數據庫

(二)  Servlet功能

1、  讀取客戶端發來的顯示信息

2、  讀取客戶端發來的隱式信息(請求頭信息)

3、  生成相應結果

4、  發送顯示信息給客戶端

5、  發送隱式數據到客戶端

(三)  相關類和接口

1、  包結構:

(1)      javax.servlet

(2)      javax.servlet.http

2、  Servlet接口:

(1)      init

(2)      getServletConfig

(3)      service

(4)      getServletInfo

(5)      destroy

3、  ServletConfig

(1)      getServletName

(2)      getInitParameter

(3)      getInitParameterName

4、  ServletContext

5、  ServletRequest

6、  ServletResponse

7、  GenericServlet

8、  HttpServlet

9、  HttpServletRequest

10、   HttpServletResponse

11、   HttpSession

(四)   

三、Servlet基礎

(一)  提交表單的兩種方法

1、  get

2、  post

(二)  Servlet生命週期

1、  加載實例化Servlet

2、  調用init方法

3、  調用service方法

4、  調用destroy方法

(三)  圖示

(四)   

1、  請求頭信息

 

四、請求頭信息

(1)      Get:發送請求的方式

(2)      URL

(3)      http協議以及1.1版本

(4)      Accept:可接受的文件類型

(5)      可接受的文件編碼

(6)      是否保持永久連接

(7)      Cookie

(8)      Host:主機

(9)      Referer:當前請求的URL

(10)  User-Agent:瀏覽器類型

2、  讀取HTTp請求頭

(1)      一般方法:getHeader、getHeaders、getHeaderNames

(2)      專門方法

(3)      相關信息:getMethod、getRequestURI、getQueryString、getProtocol

 

3、  請求頭信息

(11)  Get:發送請求的方式

(12)  URL

(13)  http協議以及1.1版本

(14)  Accept:可接受的文件類型

(15)  可接受的文件編碼

(16)  是否保持永久連接

(17)  Cookie

(18)  Host:主機

(19)  Referer:當前請求的URL

(20)  User-Agent:瀏覽器類型

4、  讀取HTTp請求頭

(4)      一般方法:getHeader、getHeaders、getHeaderNames

(5)      專門方法

(6)      相關信息:getMethod、getRequestURI、getQueryString、getProtocol

 

 

一、響應頭信息

(一)  圖示

1、  協議及版本

2、  狀態碼

3、  文本內容

4、  頭信息

5、  HTML

(二)  設置響應頭信息

1、  設置任意響應頭

(1)setHeader、setDateHeader、setIntHeader、addHeader。。。

2、  普通響應報頭的設置

(1)      setContentType

(2)      setContentLength

(3)      addCookie

(4)      sendRedirect

3、  常見HTTp 1.1響應報頭

(1)      Location

(2)      Refresh

(3)      Set-Cookie

(4)      WWW-Authenticate

4、   

(三)   

二、Cookie

(一)  簡介:保存在客戶端的一個“鍵值”對,用來標識用戶的一些信息

(二)  創建Cookie

1、  Cookie c = new Cookie(“userId”,”aaaa”);

2、  設置最大時效

3、  將Cookie放到Http響應:Response.addCookie()

(三)  獲得Cookie

1、Request.getCookies

(四)   

 

五、Session

(一)  HTTP的無狀態性,需要使用Cookie(客戶端可能無法寫入)和Session(跟蹤用戶當前狀態的一種機制,是針對瀏覽器和客戶端一一對應的

(二)  Session API

1、  HttpSession:由Web容器來完成

2、  獲取:request.getSession()

3、  保存信息:session.setAttribute(“UserSession”,obj);

4、   取:session.getAttribute(“UserSession”);

(三)   

六、共享變量與變量的作用域

(一)  共享變量

1、  setAttribute

2、  getAttribute

(二)  變量的作用域

1、  ServletContext:全局,所有用戶貢獻

2、  HttpSession:當前會話

3、  HttpServletRequest:請求結束

七、Filter

(一)  Filter簡介:起到過濾作用

(二)  創建步驟

1、  init方法

2、  doFilter方法:自動執行的

3、  Destroy方法

(三)   

八、 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章