response物件的主要作用是對客戶端的請求進行回應,
response物件的幾個常用方法:
public void add(cookie cookie); 向客戶端增加cookie;
public void setheader("string name ","string value"); 設定頭資訊
public void sendredirect(string location) throws ioexception(); 頁面跳轉,重定向
1設定頭資訊:
int count = 0 ;
%>
response.setheader("refresh","2");//頁面2秒一重新整理
%>
2頁面的跳**
response.setheader("refresh","3;url=hello.htm");//3秒後跳轉到hello.htm頁面
%> 或
3.response頁面跳轉
在response物件中提供了乙個叫做sendredirect()的方法,完成頁面的跳轉
例子:
response.sendredirect("hello.htm");
%>
此時頁面已經跳轉成功,並且位址列改變了。這種跳轉肯定屬於客戶端跳轉,客戶端跳轉是無法傳遞 request屬性範圍內容的。
問題:那麼和response.sendredirect()這兩種跳轉的區別是什麼呢? setheader也算一種跳轉!
===如果是跳轉的話,有如下特點:
.伺服器端跳轉,跳轉之後位址列不改變,可以傳遞request的屬性。
.而且是屬於無條件的跳轉,跳轉之前的語句會執行,跳轉之後的就不會執行了,如果在jsp中使用jdbc的話,一定要在 跳轉之前進行資料庫的關閉,否則永遠就關閉不了了。
===如果是response.sendredirect()跳**
.屬於客戶端跳轉,跳轉之後位址列發生改變,不可以傳遞request的屬性
.是在所有的語句都執行完後,才進行的跳轉!
4.操作cookie:
cookie c1 = new cookie("liuhui1","劉輝1");
cookie c2 = new cookie("liuhui2","劉輝2");
response.addcookie(c1);
response.addcookie(c2);
%>
本程式表示在客戶端上設定兩個cookie,既然可以設定了,也可以用request物件來取出(必須用request物件,因為客戶端在向伺服器端傳送請求的時候,會傳送乙個cookie頭資訊,所有的請求內容都封裝為乙個request物件當中);
cookie c = request.getcookies();//獲取cookie
for(int x=0;x
}
%>
由於cookie沒有設定儲存的時間,所以預設是在乙個瀏覽器上儲存的, 如果此瀏覽器關閉,則cookie消失,如果想要cookie真正儲存在客戶端上一段時間,則要用cookie類提供的的方法:setmaxage()方法。
response物件主要儲存的就是伺服器端對客戶端的回應。cookie本身是存在安全隱患的,如果要存放客戶端資訊的時候用cookie就行了。
JSP內建物件
jsp內建物件對映表 下面是各個物件介紹 request 物件代表的是來自客戶端的請求,例如我們在form表單中填寫的資訊等,是最常用的物件。關於它的方法使用較多的是getparameter getparameternames和getparametervalues,通過呼叫這幾個方法來獲取請求物件中...
jsp內建物件
request 使用者端請求,此請求會包含來自 get post 請求的引數 response 網頁傳回使用者端的回應 包含了響應客戶請求的有關資訊 pagecontext 網頁的屬性是在這裡管理 頁面上下文物件 提供了對jsp頁面內所有的物件及名字空間的訪問 session 與請求有關的會話期,主...
JSP內建物件
內建物件 不需要預告定義,在指令碼 和表示式中直接使用。一 request物件 request物件封裝了由客戶端生成的 http 請求的所有細節,主要包括 http 頭資訊 系統資訊 請求方式 和 請求引數 等。1 訪問 請求引數 getparameter 示例 在頁面中定義超連結。刪除 在dele...