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

首頁 > 學院 > 開發設計 > 正文

Cookie和Session

2019-11-14 20:52:48
字體:
來源:轉載
供稿:網友
Cookie和session

Cookie

將用戶相關的信息保存在客戶端

客戶端每次訪問服務器都會自動攜帶cookie的數據

Cookie cookie = new Cookie(name, value);

response.addCookie(cookie);

什么是會話Cookie

保存在瀏覽器內中的屬于會話cookie

特點:關閉瀏覽器的時候就會清楚cookie

什么是持久會話cookie

數據保存客戶端硬盤上

通過setMaxAge 設置為持久

Cookie的有效路徑

cookie.setPath(“/work”);

刪除cookie

cookie.setMaxAge(0);

cookie.setPath(“/work”);

response.addCookie(cookie);

//request.getRequestDispatcher(“/PRo.jsp”).forward();//轉發

response.sendRedirect(“/work/pro.jsp”);//重定向

有效域名

訪問sina的時候,設置cookie.setDomain(“.baidu.com”);

這是第三方cookie,是不安全的。一般瀏覽器都不接受。

訪問sina時候,生成的cookie,cookie.setDomain(.sina.com.cn);

這個是第一方cookie

---------------------------------------------

Session

為每一個客戶端生成唯一的編號,記錄客戶端要購買的記錄

服務器回應給客戶端編號

客戶端結賬的時候,發送給服務器編號

服務器獲得編號,通過編號查找客戶端購買的商品

會話級別、持久級別

IE6默認是會話級別,所以新開瀏覽器讀取不到session

解決方法:將jsessionid持久化

HttpSession httpSession = request.getSession();

httpSession.setAtt(name, value);

new Cookie(“JSESSIONID”,httpSession.getId());

cookie.setMaxAge(60 * 60);

cookie.setPath(“/work”);

response.addCookie(cookie);

-------------

禁用cookie后,session還能使用,對url進行重寫,拼接jsessionid

response.encodeURL();

如果服務器進行URL重寫,那么所有路徑都必須重寫

最好不要讓用戶禁用cookie

生命周期

Cookie生命周期

創建:

Cookie cookie = new Cookie(name,value);response.addCookie(cookie);

銷毀:

會話級別,瀏覽器關閉就銷毀

持久級別,過期后銷毀 MaxAge

Session生命周期

創建:

request.getSession();

銷毀:

情況一,服務器關閉

情況二,session過期時銷毀

1.web.xml文件配置session過期時間

<session-config>

<session-timeout>30</session-timeout> 單位:分鐘

</session-config>

默認一般不用配置,tomcat下web.xml有默認配置

2.調用session對象的方法

HttpSession session = request.getSession();

session.setMaxInactiveInterval(60 * 60); //單位是秒

情況三、調用invalidate()方法

session.invalidate();

--------------------------------

三種數據范圍

ServletContext

HttpServletRequest

HttpSession

共同方法:

setAtt 存入屬性

getAtt 取出屬性

removeAtt 移除屬性

什么時候使用?

ServletContext 服務器啟動時創建,服務器關閉銷毀

時間最長,所有Servlet共享,用于保存全局的數據

例如:數據庫連接、工程配置屬性、配置文件內容

HttpSession

在request.getSession()時候創建

在三種情況下銷毀

用來保存與用戶相關的數據

例如:登錄信息、購物車

HttpServletRequst 在客戶端發起請求時,服務器創建對象

在響應結束時,對象銷毀

保存servlet向jsp傳輸數據信息

例如:某個操作,servlet將操作結果傳遞jsp

servlet將登錄信息傳遞jsp、servlet將數據庫查詢結果傳遞給jsp

以上三種數據范圍,ServletContext > HttpSession > HttpServeletRequest

宗旨:優先使用生命周期短的,有利于服務器資源控制。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 新闻| 瓦房店市| 徐水县| 南皮县| 保靖县| 津市市| 高碑店市| 阳城县| 平遥县| 容城县| 茌平县| 康定县| 酉阳| 会东县| 曲阳县| 温宿县| 噶尔县| 达拉特旗| 六安市| 沙雅县| 津南区| 宁强县| 德昌县| 和平区| 鲜城| 建湖县| 张掖市| 宜都市| 沙湾县| 绥中县| 伊川县| 衡东县| 西和县| 松原市| 上高县| 凤台县| 绥德县| 洛扎县| 望江县| 明溪县| 阆中市|