JSP內置對象:out, request, response, pageContext, session, application, config, exception, page。
一、request
客戶端發送給服務器的(JSP頁面)請求,通常request對象是javax.servlet.http.HttpServletRequest接口的一個實例。
1. 典型應用:request.getParamter(“paramName”)——獲得form提交過來的參數值。
2. 可以用此對象取得請求的Header信息(瀏覽器版本、語言、編碼等)、請求方式(get/post)、請求的參數名稱、參數值、客戶端的主機名稱等。
3. 常用方法:
getMethod(); 返回客戶端向服務器端傳送數據的方法(get/post)。
getParameter(String paramName); 返回客戶端向服務器端傳送的參數值。
getParameterNames(); 獲得客戶端傳遞給服務器端的所有參數的名字,結果是一個枚舉類型(Enumeration)。
getParameterValues(String name); 獲得指定參數的所有值。
getRequestURI(); 獲得發出請求字符串的客戶端地址。
getRemoteAddr();/Host(); 獲得客戶端的IP地址/機器名稱。
getServerName(); 獲得服務器的名稱。
getServerPort(); 獲得服務器的端口號。
二、response
服務器端返回給客戶端的響應,通常response是javax.servlet.http.HttpServletResponse接口的一個實例。
1. 常用於設置HTTP標題、添加Cookie、設置響應內容的類型和狀態、發送HTTP重定向和編碼URL。
2. 常用方法:
addCookie(Cookie cookie); 添加一個Cookie對象,用於在客戶端保存特定的信息。
addHeader(String name, String value); 添加HTTP頭信息,該Header信息將發送到客戶端。
containsHeader(String name); 判斷指定名字的HHTP文件頭是否存在。
sendError(int); 向客戶端發送錯誤信息。
sendRedirect(String url); 重定向JSP文件。客戶端發起二次請求,第一次、第二次請求是不同的兩個request。
sendContentType(String contontType); 設置MIME類型與編碼方式。
三、cookie
1. HTTP協議的無連接性要求出現一個保存C/S間狀態的機制。
2. cookie保存在客戶端的一個文本文件中,與特定客戶相關。
3. cookie通過“鍵-值”對的形式保存數據。
4. 通過getName 和 getValue 得到相應的名字和值。
四、session
session表示一個請求的javax.Servlet.http.HttpSession對象。Session可以存儲用戶的狀態信息。
1.<% @ page session=”true” %> 默認爲true, session功能在jsp頁面啓動。
2.session常用方法:
void setAttribute(String name, Object value); setAttribute 是Web服務器把這個對象放在該頁面所對應的一塊內存中去,當你的頁面服務器內部重定向到另一個頁面時,應用服務器會把這塊內存拷貝另一個頁面所對應的內存中。
Object getAttribute(String name); 返回request範圍內存在的對象,返回的是Object,需要進行向下類型轉換。
Boolean isNew()
五、application
application表示一個javax.Servlet.ServletContext對象。用於查找有關Servlet引擎和Servlet環境的信息。
六、page
JSP網頁本身。