亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

Servlet-實現會話跟蹤的技術

標簽:
Java
  1. 使用Cookie

    所有的HTTP消息,不管是请求还是相应均包含头信息,
    当返回相应给客户端时Servlet容器把会话的信息添加到响应头信息中
    客户端浏览器接收到响应后提取头信息,并将其存储在本地机中,再发送请求会将信息带回服务器端。由浏览器存储在客户端机器中的头信息就叫做Cookie,以“属性名=属性值”的方式组成的文本信息

    • 向客户端发送Cookie
Cookie c =new Cookie("name","value"); //创建Cookie
c.setMaxAge(60*60*24); //设置最大时效,此处设置的最大时效为一天
response.addCookie(c); //把Cookie放入到HTTP响应中
  • 从客户端读取Cookie
String name ="name";
Cookie[]cookies =request.getCookies();
if(cookies !=null){
    for(int i= 0;i<cookies.length;i++){
        Cookie cookie =cookies[i];
        if(name.equals(cookis.getName()))
            //something is here. 
            //you can get the value
            cookie.getValue();
    }
}
Cookie的优缺点:

优点:数据可以持久保存,不需要服务器资源,简单,基于文本的Key-Value
缺点:大小受到限制,用户可以禁用Cookie功能,由于保存在本地,有一定的安全风险。

  1. URL重写

客户程序在每个URL的尾部添加额外的数据来标识会话
服务器将这个标识符与它所存储的有关会话的数据关联
URL重写的优缺点:
优点:在Cookie被禁用的时候依然可以使用
缺点:必须对网站的URL进行编码,所有页面必须动态生成,不能用预先记录下来的URL进行访问。

  1. 隐藏的表单域
<input type="hidden" name ="session" value="..."/>

表单域的优点:Cookie被禁时可以使用
表单域的缺点:所有页面必须是表单提交之后的结果。

  1. HttpSession

会话对象生存于服务器上,会话自动通过Cookie或URL重写与客户端关联起来,允许我们将任何对象存储到会话中。

  • 使用HttpSession对象
    获取一个与请求相关的会话
    从会话中添加或删除一个属性
    根据需要关闭会话
    具体HttpSession应用请参考笔记:HttpSession实现购物车功能
點擊查看更多內容
6人點贊

若覺得本文不錯,就分享一下吧!

評論

作者其他優質文章

正在加載中
感謝您的支持,我會繼續努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進行掃碼打賞哦
今天注冊有機會得

100積分直接送

付費專欄免費學

大額優惠券免費領

立即參與 放棄機會
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號

舉報

0/150
提交
取消