【jsp/servlet】jsp資料互動(二)
阿新 • • 發佈:2018-12-30
本章目標:
- 掌握application的原理及應用
- 掌握物件的作用域
- 掌握cookie的原理及應用
- 使用jsp訪問資料庫
1、application物件
類似於系統的“全域性變數”,用於同一個伺服器內的所有使用者之間的資料共享,對於整個web伺服器,application有且只有一個示例。
application常用方法:
- void setAttribute(String key,Object value) //以key/value的形式將物件儲存到application中
- Object getAttribute(String key) //通過key獲取儲存在application中的物件
- String getReadPath(String path) //返回相對路徑的真實路徑
application主要用於統計網站訪問人數,示例:
Integer count =(Integer)application.getAttribute("count");
if(count!=null){
count+=1;
}else{
count=1;
}
application.setAttribute("count",count);
小結:jsp常用內建物件
- out物件:用於想客戶端輸出資料
- request物件:主要用於處理客戶端請求的資料資訊
- response物件:用於響應客戶端請求並向客戶端輸出資訊
- session物件:用於記錄會話的相關資訊
- application物件:類似於系統的“全域性變數”,用於實現web應用中的資源共享
2、物件的作用域
jsp中提供了四種作用域:
1、page作用域:同一個頁面中有效
2、request作用域:通過request物件setAttribute()方法儲存資料,然後呼叫RequestDispatcher的forward()方法轉向的頁面或者呼叫include()方法包含的頁面時,都可以訪問request作用域內的物件。
3、session作用域:通過session物件的setAttribute()方法儲存資料後,只要不關閉會話(不關閉瀏覽器),都可以訪問session作用域內的物件。
4、application作用域。只要web伺服器不關閉,都可以訪問。
3、cookie
什麼是cookie?簡單明瞭的說:快取。你的網站有誰登入了、瀏覽了哪些頁面,都可以存入cookie當中。並且,還可以設定cookie的有效時間。
- 建立cookie物件:Cookie newCookie = new Cookie(String name,String value),name表示cookie的名稱,value表示當前key名稱所對應的值。
- 寫入cookie:response.addCookie(newCookie);
- 讀取cookie:Cookie[] cookies = request.getCookie();
cookie的常用方法: - void setMaxAge(int expiry) 設定cookie的有效期,以秒為單位
- void setValue(String value) 在cookie建立後,為cookie賦予新的值
- String getValue() 獲取cookie的值
- int getMaxAge() 獲取cookie的有效時間
**注:**sessionid被儲存在cookie中。
4、jsp訪問資料庫
與Java一致。
5、JavaBean
JavaBean是Java中的可以跨平臺的重用元件。主要負責封裝資料和封裝業務處理。JavaBean的定義要遵循一定的規則:公有類,並提供無參的共有構造方法;屬性私有,具有共有的訪問屬性的getter/setter方法。