栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

JavaWeb学习5

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

JavaWeb学习5

一、Session

1.基本介绍

        session是属于B/S结构的会话机制,其相应的Java对象HttpSession是由服务器创建的,一次会话大致可描述为打开浏览器,进行一系列操作,关闭浏览器。session的主要作用是保存会话状态(用户登录成功,session可以保留这种状态)。为什么需要使用session呢?因为HTTP协议是无状态协议,B和S的连接是间断的。

注:session存储信息在服务器端

2.在程序中如何使用session

HttpSession session = request.getSession();//获取Session对象,若获取不到则新建,若参数为false,则不新建
session.setAttribute("num",1);//向Session对象存入数据
System.out.println("num="+session.getAttribute("num"));//取出数据并打印
session.removeAttribute("num");//移除session中的数据

3.session运行流程

(1)用户发送第一次请求时,服务器会创建一个新的Session对象,同时给Session对象生成一个SessionID,之后服务器将SessionID发送给浏览器,浏览器会将这个SessionID存入缓存中。

 注:第一次发送请求,服务器会设置SessionID并响应给浏览器

(2)用户第二次发送请求时,浏览器会将存储在缓存中的SessionID发送给服务器,服务器会通过这个ID找到对应的session对象。

 4.session对象的销毁

(1)超时销毁:超过一定时间没有对服务器中的Session对象进行操作,Session对象会被销毁。

(2)手动销毁(各个网站的安全退出功能)

session.invalidate();//销毁session对象

二、cookie

1.基本介绍

        cookie也是为了保存会话状态而被使用的,其数据保存在浏览器客户端或者运行内存中。

2.cookie的规定

        HTTP协议规定,任何一个cookie都是由name与value组成的,name与value都是字符串类型,当浏览器发送请求时,会自动携带该path下的cookie数据给浏览器

3.cookie的使用

Cookie cookie = new Cookie("num","2");//向cookie中添加数据
response.addCookie(cookie);//在响应中加入cookie
Cookie[] cookies = request.getCookies();//接收cookie中的数据
for(Cookie tmp:cookies){//遍历cookie数组
    System.out.println(tmp.getName()+"="+tmp.getValue());
}

4.cookie的有效时间

        若不调用setMaxAge(),cookie将数据保存在浏览器内存中,浏览器关闭,cookie消失,若设置setMaxAge()参数为正,则cookie会将数据保存在内存文件中,浏览器关闭,cookie依然存在。

cookie.setMaxAge(60*60);//>0,有效时间设定,单位:秒
cookie.setMaxAge(-1);//<0,相当于不调用setMaxAge()
cookie.setMaxAge(0);//=0,删除cookie

5.cookie的路径

 cookie.setPath("/lpx");//表示只要根路径是lpx的请求,都会提交此cookie给服务器

三、两者异同

  相同点:(1)session机制和cookie机制都是为了保存会话状态(因为HTTP协议是无状态协议)

                 (2)cookie和session都是用来跟踪浏览器用户身份的会话方式。

  不同点:(1)session保存数据在服务器端,cookie保存数据在浏览器客户端或运行内存中。


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/941672.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号