servlet-会话
来源:互联网 发布:矩阵和行列式的转换 编辑:程序博客网 时间:2024/05/16 06:32
Cookie
Cookie介绍
Cookie是一种在客户端保持HTTP状态信息的技术;Cookie以“名-值”对的形式保存数据,保存到客户端的一个文本文件,与特定客户相关浏览器访问WEB服务器端的某个资源时,由WEB服务器在HTTP应答头中附带传送给浏览器的一个数据,WEB服务器传送给各个客户端浏览器的数据可以是各不相同的;一是WEB浏览器保存了某个Cookie,那么它以后每次访问服务器端时,都应在请求头传回给服务器端;一个Cookie只能记录一种信息,它至少含有一个标识信息的名称(NAME)和设置值(VALUE);一个WEB站点可以给一个WEB浏览器发送多个Cookie,一个WEB浏览器也可以存储多个站点所提供的Cookie;浏览器一般最多能存入300个Cookie,每个站点的Cookie最多可以放20个Cookie,每个Cookie大小限制在4K。
Cookies工作原理
1.客户端发送请求;2.服务端在响应头中设置Cookies;3.客户端再次请求文档4.服务器读取Cookies客户通过HttpServletRequest对象发送Cookie。Servlet通过HttpServletResponse对象发送Cookie到客户
Cookie方法介绍
Cookie.Cookie(String,String); --用Cookie类构造符创建Cookie,并分配它一个值Cookie.getValue(String name); --被Servlet创建的每个Cookie给一个名和值,此函数返回存储在客户端Cookie的值Cookie.getName(); --用此方法检索Cookie中的名Cookie.setValue(String); --用此函数把String类型的值赋给某个CookieCookie.setMaxAge(int); --用此方法指出客户端浏览器保留Cookie值的最长时间HttpServletResponse.addCookie(); --Cookies由服务器创建并通过HttpServletResponse对象传到客户。用addCookie()方法把Cookie加入到此应答,此方法可调用不只一次,把不同的Cookies加入到要发送给客户的应答HttpServletRequest.getCookie(); --客户以请求形式把数据发送给服务器,它被服务器以HttpServletRequest对象的形式所接收,用此方法可检索请求中Cookie值
Session
session介绍
Session:在计算机中,尤其是在网络应用中,称为"会话控制"。Session 对象存储特定用户会话所需的属性及配置信息。这样,当用户在应用程序的 Web 页之间跳转时,存储在 Session 对象中的变量将不会丢失,而是在整个用户会话中一直存在下去。当用户请求来自应用程序的 Web 页时,如果该用户还没有会话,则 Web 服务器将自动创建一个 Session 对象。当会话过期或被放弃后,服务器将终止该会话。Session 对象最常见的一个用法就是存储用户的首选项。Session是指在一段时间内,单个客户访问与Web服务器的一连串相关交互过程。在一个session中,客户可能会多次请求访问同一个网页,也有可能请求访问各种不同的服务器资源。
session的工作原理
当一个Session开始时,Servlet容器将创建一个HttpSession对象,在HttpSession对象中可以存放客户状态信息(例如购物车)。Servlet容器为HttpSession分配一个惟一的标识符,称为SessionID。Servlet容器把SessionID作为Cookie保存在客户浏览器中,每次客户发邮HTTP请求时,Servelt容器从HttpRequest对象中读取SessionID,然后根据SessionID找到相应的HttpSession对象,从而获取客户的状态信息
HttpSession接口主要方法
初始化阶段: request.getSesson(); --获得一个Session对象运行阶段: setAttribuate(String name,Object value); -- 将一对name/value属性保存在HttpSession对象中 getAttribuate(String name); --. getAttribuate(String name) 根据name参数返回HttpSession对象中所有的属性值 removeAtribute(Strings); --移除HttpSession对象中的属性值 getAttribuateNames(); --以数组的方式返回HttpSession对象中所有的属性名释放阶段: Invalidate(); --使当前的Session失效,servlet 容器会释放HttpSession对象占用的资源 setMaxInactiveInterval(); --设置一个秒数,这个秒数表示客户端在不发出请求时,session被Servlet引擎维持的最长时间。
HttpSession接口其他方法
getID(); --返回SessionID getID(); --判断是否是新创建的Session,如果是新创建的Session,返回true,否则返回false getMaxInactiveInterval(); --读取当前Session可以处于不活动状态的最大时间间隔 session.getCreationTime(); --获得Session对象的创建时间session.getLastAccessedTime(); --最后一次操作时间
Session失效
1.当客户第一次访问Web应用中支持Session的某个网页时,就会开始一个新和Session。接下来当客户浏览这个Web应用的不同网页时,始终处于同一个Session中。Session拥有特定的生命周期。在以下情况中,Session将结束生命周期,Servlet容器会将Session所占用的资源释放掉:2.客户端关闭浏览器3.Session过期4.服务器端调用了HttpSession的invalidate()方法5.浏览器session没有关闭时,服务器重启,session会序列化保存到本地等待服务器重新启动后反序列化获得sessionSession过期是指当Session开始后,在一段时间内客户没有和Web服务器交互,这个Session会失效 HttpSession类的setMaxInactiveInterval()方法可以设置允许Session保持不活动状态的时间(以秒为单位),如果超过这一时间,Session就会失效。
阅读全文
0 0
- Servlet会话
- servlet会话
- servlet-会话
- Jsp & Servlet 会话控制
- servlet会话[ZT]
- Servlet的会话管理机制
- Jsp & Servlet 会话控制
- Servlet 控制会话
- servlet的会话跟踪
- Servlet中的会话跟踪
- Servlet会话跟踪技术
- Servlet的会话跟踪
- Servlet的会话跟踪
- Servlet的会话跟踪
- 【servlet】会话_Session
- Servlet中会话管理
- Servlet 会话管理
- 细说servlet--会话技术
- spring in action书中5.3节中代码错误
- Git 初接触 (三) Git的撤销操作 git checkout -- <file>
- JDBC
- MySQL添加用户、删除用户与授权 MySql中添加用户,新建数据库,用户授权,删除用户,修改密码(注意每行后边都跟个;表示一个命令语句结束): 1.新建用户 1.1 登录MYSQL:
- 关于ACE_Svc_Handler
- servlet-会话
- 常见的数据库优化策略(经典)
- VS2010编译C++项目error LNK1123错误解决办法
- Codeforces Round #453 (Div. 2)A,B,C
- 性别特么有这么重要么
- java--URL编码和解码
- 899B
- linux开机启动mongodb
- spring框架之快速入门