session、cookie、ServletContext
来源:互联网 发布:网络视频赌博真假 编辑:程序博客网 时间:2024/05/17 22:25
一、session
(1)session存储在服务器端,大小、类型不受限制
1、HttpSession hs = request.getSession(true); //获取session,参数true表示如果没有session就创建一个session.
2、hs.setAttribute("name", Value); //给session赋值
3、String id = hs.getId(); //获取session的ID
4、Date date = new Date(hs.getCreationTime()); //获取session的创建日期
5、Date date = new Date(hs.getLastAccessedTime()); //获取该session最后一次被访问的日期
6、Object obj = (Object)hs.getAttribute("name");
(2)session使用时需要通过SessionID来获取,而这个SessionID是存放在客户端的cookie中的,假如你的浏览器关闭了cookie功能的话将不能使用session,解决的办法就是使用URL重写功能。URL重写其实就是对URL进行编码加密,客户端看不到真实的URL,而且它还有一个重要的功能就是每次URL重写完成之后都会将SessionID放置到URL中,这样每次服务器在获取相应的session时需要的SessionID就可以从URL中找到,而且URL还进行了加密,增强了安全性。
1、<a href="<%=response.encodeRedirectURL("http://www.baidu.com/")%>">百度</a>
2、response.sendRedirct(response.encodeRedirectURL("http://www.baidu.com/"));
(3)session生命周期:hs.setMaxInactiveInterval(10*60); //Tomcat下默认为20分钟
二、cookie
cookie 分为两种:一种是依赖于窗口的,一旦浏览器窗口关闭(进程退出),则cookie被清除。另一种cookie是有生命周期的,在规定的时间内会一直被保存。若不规定cookie的最大生命周期,则依赖于窗口。
cookie是不可靠的,因为cookie是可以被禁用的,也可以被清除,所以核心业务逻辑应该使用更加稳定可靠的session,但我们可以依靠 Cookie 实现某些不是很重要的业务逻辑。
1、Cookie cookie = new Cookie("name", Value);
2、cookie.setMaxAge(5*60); //5分钟
3、response.addCookie(cookie); //添加到客户端
三、ServletContext
ServlerContext是WEBAPP的一个全局变量,整个系统只有一份,能存储所有用户都能访问的数据。经典应用:计算网站访问量
1、ServletContext sc = this.getServletContext();
2、sc.setAttribute("count", Value);
2、Integer count = (Integer)sc.getAttribute("count");
- cookie ,session ,servletContext
- session cookie servletcontext pageContext
- session、cookie、ServletContext
- cookie ,session,servletContext的区分
- Session/Cookie/ServletContext的使用
- Servlet之ServletContext、Session、Cookie
- Servlet 中的 Cookie 、 Session 和 ServletContext
- ServletContext,cookie,session的一些总结
- 网站计数器的设计Cookie+Session+ServletContext
- servlet中的cookie、session、servletContext简单操作
- java之辨析Session Cookie Servletcontext
- 讲透Session、Cookie和ServletContext
- java之辨析Session Cookie Servletcontext
- (第7讲)session、cookie、servletContext区别联系
- 【2015/4/20】servlet学习笔记6--cookie与session+servletContext+操作文件
- session 和ServletContext对比
- servletcontext,session的生命周期
- Session,Cookie
- HDU 3264 Open-air shopping malls (两个圆的交面积+二分)
- MyBatis官方文档-3.XML文件
- 平台总线 设备 驱动相关调用与简介
- jQuery中获得选中select值
- gtest框架的使用
- session、cookie、ServletContext
- 宽字符集(unicode)操作函数
- vb.net限制文本框只能输入数字
- Linux C++中获取指定pid、tid的CPU与内存占用信息
- python学习笔记四
- Linux sed命令详解(转)
- day5
- Linux下的多进程编程初步
- Sqlite排序语句