国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JSP > 正文

JSP-04- 實現數據的保存

2019-11-15 00:08:07
字體:
來源:轉載
供稿:網友
jsp-04- 實現數據的保存.1 session

一段時間內,單個客戶與Web服務器的一連串相關的交換過程。

Ø 4.1.1 應用的場景: 用戶登錄后保存用戶狀態

確定用戶的唯一 Sessin.getId();

Ø 4.1.2 會話的創建和使用: 創建

Httpsession session= request.getSession(Boolean value);

Httpsession session= request.getSession();

在第一種方法中,布爾值為true時,如果存在與當前請求關聯的會話,就返回該會話,否則就創建一個新的會話,并把該會話返回。布爾值為 flase 時,如果存在會話返回,否則返回 null, 不再創建會話。

第二種方法等同于第一種方法中的布爾參數值為true的情況。

使用

賦值語法: public void setAttribute(String name, Object value) ;

用法: session.setAttribute(“name”,”張曼”);

取值語法: public Object getAttribute(String name);

用法:String username = (String)session.getAttribute(“name”);

Session會保存在服務器端,如果沒有清理機制,會導致性能問題或服務器崩潰。

清空Session:

1)程序主動清除Session數據

設置會話失效:session.invalidate();//注銷時

移除會話中一個屬性:

語法: public void removeAttribute(String name);

用法: session.removeAttribute(“name”);

2)服務器主動清除長時間沒有再次發出請求的session

設置會話過期時間:

方法一:public void setMaxInactiveInterval(int interval); (單位:秒)

可以再給Session賦值后,直接設置會話過期時間

方法二: 配置 Web.xml文件

添加

<session-config>

<session-timeout>30<session-timeout>

</session-config> (單位:分鐘 注意放在 wep-app中)

結束Session的三種方式:

  1. 關閉瀏覽器
  2. 兩次訪問的間隔時間大于非活動時間
  3. 調用HttpSession的invalidate()方法

Ø 4.1.3 Session的生命周期

HttpSession技術不屬于Http協議范圍內,是由web容器為程序提供的服務。

4.2 cookieØ 4.2.3 應用場景

關閉瀏覽器,結束會話,重啟后,用戶名已填寫。登錄郵箱或其他服務,頁面直接填好了用戶名。

Ø 4.2.4 使用方法

public void addCookie(Cookie cookie)

Cookie以文件的形式保存信息,存放在客戶端,可以再IE設置該文件。

添加數據: public void addCookie(Cookie cookie)

獲取數據: public Cookie[] getCookies()

設置有效期: public void setmaxAge(int expiry)

用戶可以禁用: cookie

添加:Cookie cookie = new Cookie(“變量名”,值);

Cookie.setmaxAge(60*60) ; //設置有效時間,默認為妙

Response.addCookie(cookie);

返回: Cookie[] cookie = request.getCookes();

for(&hellip;…){

if(cookie.getName().equals(“變量名”)){

user=cookies[i].getValue;

}

}

禁用Cookie

4.3 application

4.3.1 使用場景: 統計頁面訪問次數,同時在線的人數

4.3.2 實現方式: public void setAttribute(String name,Object object)

Public Object getAttribute(String name)

<%

Object count = application.getAttribute(“count”);

if(count ==null){

application.setAttribute(“count”,new Integer(1));

}else{

Integer I = (Integer)count;

application.setAttribute(“count”,i.value()+1);

}

%>

Request中存儲的數據盡在一個請求中可用。

Session中存儲的數據在一個會話有效期內可以。

application中存儲的數據在在整個web項目中可以。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 祁阳县| 佳木斯市| 汝阳县| 宜黄县| 沾益县| 卢湾区| 保山市| 玉溪市| 牡丹江市| 筠连县| 太仆寺旗| 宜昌市| 高要市| 云和县| 梁山县| 当阳市| 五原县| 彩票| 石河子市| 桃源县| 枝江市| 彩票| 北海市| 南雄市| 青浦区| 南和县| 汝南县| 金沙县| 邢台市| 龙岩市| 郁南县| 昌黎县| 青海省| 阜宁县| 东至县| 玉屏| 合山市| 西吉县| 任丘市| 洛阳市| 安丘市|