1. 程式人生 > >javaWeb_需要記住的域物件及其作用

javaWeb_需要記住的域物件及其作用

四個域物件、
pagecontext  表示的是當前頁面的域物件
Request表示的是請求域中的物件
session  表示的是一次會話中的物件
application表示的是在一次tc啟動到一次關閉的時候獲取得到的物件
jsp的9大內建物件
request
Response
session
Application
Page
pagecontext
out
config
exception
EL常用的物件:11個.
${pageScope}
${requestScope}
${sessionScope}
${applicationScope}
${ param }:相當於request.getParameter();
${ paramValues }:相當於request.getParameterValues();
${ header }:獲得請求頭 一個key對應一個value
${ headerValues }:獲得請求頭 一個key對應多個value 
${ initParam }:獲得初始化引數
${ cookie }:獲得Cookie的資訊

${pageContext}:相當於pageContext物件.

cookie:
瀏覽器端會話技術
由伺服器產生,生成key=value形式,通過響應頭(set-cookie)返回給瀏覽器,儲存在瀏覽器端
下次訪問的時候根據一定的規則攜帶cookie,通過請求頭(cookie)攜帶給伺服器.
常用方法:
構造:
new Cookie(String key,String value)
寫回:
response.addCookie(Cookie c)
獲取:
Cookie[] request.getCookies();
cookie的api:
getName():獲取cookie的名稱
getValue():獲取cookie的值
setMaxAge(int 秒數);持久化
若int為0;刪除此cookie(前提必須路徑一致)
setPath(String path):設定cookie的路徑
若訪問的連結的路徑中包含cookie的path,則攜帶
注意:
cookie不能跨瀏覽器
cookie不支援中文

page指令:
重要屬性:3個
contentType:設定響應流的編碼,及通知瀏覽器用什麼編碼開啟.設定檔案的mimetype
pageEncoding:設定頁面的編碼
import:匯入所需要的包
contentType和pageEncoding聯絡:
若兩者都出現的時候,各自使用各自的編碼
若只出現一者,兩個都使用出現的這個編碼
若兩者都不出現,使用伺服器預設的編碼 tomcat7使用的iso-8859-1

session:
伺服器端的會話技術
瀏覽器訪問伺服器的時候,伺服器會獲取jsessionid,
若獲取不到:
伺服器建立一個session,儲存使用者資料,將該session的jsessionid通過響應返回給瀏覽器
若獲取到:
伺服器拿著這個jessionid去session池中查詢有無此session
若查詢不到:
伺服器建立一個session,儲存使用者資料,將該session的jsessionid通過響應返回給瀏覽器
若查詢到:
拿過來直接使用,將該session的jsessionid通過響應返回給瀏覽器
常用方法:
獲取一個session
request.getSession();

session域物件:
xxxAttribute()
生命週期:
建立:java程式中第一次使用request.getsession方法的時候
銷燬:
伺服器非正常關閉
session超時
預設時間
手動設定時間
手動刪除★
session.invalidate();
域物件:
ServletContext:共享的資料
HttpServletRequest:一次請求的資料
HttpSession:私有的資料

jsp:
java 伺服器頁面
作用:
將內容的生成和資訊的展示相分離
執行在伺服器端,本質上就是一個serlvet,產生的java檔案和class保留在tomcat的word目錄下.
jsp指令碼:
<%..%> java程式碼片段
<%=..%> 輸出表達式 相當於out.print();
<%!...%> 宣告成員
jsp的指令
作用:宣告jsp頁面的一些屬性和動作
格式:
<%@指令名稱 屬性="值" 屬性="值"%>
jsp指令的分類:
page:主要宣告jsp頁面的一些屬性
include:靜態包含.
taglib:匯入標籤庫
注意:
一個頁面中可以出現多個指令
指令可以放在任意位置,一般都放在jsp頁面最上面.