1.request對象
該對象封裝了使用者提交的資訊,通過調用該對象的響應的方法可以擷取使用者提交的資訊。
當request對象擷取使用者提交的漢字字元時,會產生亂碼,由下面的方法可以解決:
Sting s2 = new String(s1.getBytes("iso8859-1"),"GB2312")進行轉換。
request常用的方法:
1.request.getParameter("name"); 擷取表單提交的資訊
2.request.getPRotocol(); 擷取用戶端使用的協議
3.request.getServletPath(); 擷取客戶提交資訊的頁面
4.request.getMethod(); 擷取客戶提交資訊的方法
5.request.getHeader(); 擷取http訊息頭中屬性的值 如:accept、accept-encoding、host
6.request.getRemoteAddr(); 擷取客戶的ip地址
7.request.getRemoteHost(); 擷取客戶機的名稱
8.request.getServerName(); 擷取伺服器的名稱
9.request.getServerPort(); 擷取伺服器的連接埠號碼
10.request.getParameterNames(); 擷取用戶端提交的所有參數的名字
response對象的使用方法
對客戶的請求作出動態響應,向用戶端發送資料
1.動態響應contentType屬性
當一個使用者訪問一個jsp頁面時,如果該頁面用page指令設定頁面的contentType屬性時text/html,那麼JSP引擎將按照這個屬性值做出反應。如果要動態改變這換個屬性值來響應客戶,就需要使用Response對象的setContentType(String s)方法來改變contentType的屬性值。
格式:response.setContentType(String s);
參數s可取text/html,application/x-msExcel,application/msWord等。
2.Response重新導向
在某些情況下,當響應客戶時,需要將客戶重新引導至另一個頁面,可以使用Response的sendRedirect(URL)方法實現客戶的重新導向。例如:
response.sendRedirect("index.jsp");
3.session對象
什麼是session對象?
它在第一個jsp頁面被載入時自動建立,完成會話期管理,從一個客戶開啟瀏覽器並串連伺服器開始,到客戶關閉瀏覽器並離開伺服器為
止,被稱為一個會話,當一個客戶訪問一個伺服器時,可能要在伺服器上的幾個頁面間切換,伺服器要知道這是一個客戶,這就需要
session對象。
當一個客戶首次訪問伺服器上的一個JSP頁面時,JSP引擎產生一個Session對象,同時分配一個String類型的ID號,JSP引擎同時將這換 個ID號發送到用戶端,存放在Cookie中,這樣Session對象,直到客戶關閉瀏覽器後,伺服器端該客戶的Session對象才取消,並且和客戶的會話對應關係消失。當客戶重新開啟瀏覽器再串連到該伺服器時,伺服器為該客戶再建立一個新的Session對象。
session對象的使用:
● public String getId():擷取Session對象編號。
● public void setAttribute(String key,Object obj):將參數Object指定的對象obj添加到Session對象中,並為添加的對象指定一個索引關鍵字。
● public Object getAttribute(String key):擷取Session對象中含有關鍵字的對象。
● public Boolean isNew():判斷是否是一個新的客戶。
4.Application對象
伺服器啟動後就產生了這個Application對象,當客戶再所訪問的網站的各個頁面之間瀏覽時,這個Application對象都時同一個,直到伺服器關閉。但是與Session對象不同的時,所有客戶的Application對象都時同一個,即所有客戶共用這個內建的Application對象。
Application對象的常用方法
● setAttribute(String key,Object obj):將參數Object指定的對象obj添加到Application對象中,並為添加的對象指定一個索引關鍵字。
● getAttribute(String key):擷取Application對象中含有關鍵字的對象。
5.out 對象
Out對象時一個輸出資料流,用來向用戶端輸出資料。Out對象用於各種資料的輸出。其常用方法如下。
● out.print():輸出各種類型資料。
● out.newLine():輸出一個分行符號。
● out.close():關閉流。
6.pageContext對象
網頁的屬性在這裡設定。
頁面內容物件
Jsp引入了一個名位PageContext的類,通過它可以訪問頁面的許多屬性。
PageContext類擁有getRequest,getResponse,getOut,getSession等方法。
pageContext變數儲存與當前頁面相關聯的PageContext對象的值。
補:
如果方法需要訪問多個與頁面相關的對象,
傳遞pageContext要比傳遞request,response,out等的獨立引用更容易。(雖然兩種方式都能達到同樣的目的)
7.page對象
一般我們使用page指令來替代使用這個對象。
8.config對象
9.exception對象:用來處理異常
下面為這個exception對象來舉個列子;
我有兩個頁面page1.jsp和page2.jsp
page1.jsp的代碼
<%@ page contentType="text/html; charset=GBK" errorPage="page2.jsp" %>
<html>
<head>
<title>
page1
</title>
</head>
<body >
<h1>
<%=(3/0)%>
</body>
</html>
顯然這個頁面是有異常的就是我用綠色標出的地方,那麼我在紅色寫的地方就是表示只要這個頁面有異常就自動跳到page2.jsp中。
現在這個page2.jsp就是剛才page1.jsp出錯的時候跳過來的,所以我的page2.jsp一定要指定為錯誤頁面,也就是紅色地方,
這樣我就可以在頁面寫上<%=exception.toString() %>,他就顯示在page1.jsp上的異常資訊了,
page2.jsp的代碼
<%@ page contentType="text/html; charset=GBK" isErrorPage="true" %>
<html>
<head>
</head>
<body bgcolor="#ffffff">
<h1>程式發生了錯誤</h1>
<%=exception.toString() %>
</body>
</html>
資料來源:學網(www.xue5.com),原文地址:http://www.xue5.com/itedu/200802/99006_2.html
本文來自CSDN部落格,轉載請標明出處:http://blog.csdn.net/lookthatgirl/archive/2009/12/29/5102057.aspx