HttpSession的创建于Session释放
2014-02-10 21:47
309 查看
session与cookie的区别和联系
cookies是在客户端保存的变量 session是在服务器端保存的变量 cookies可以自行设置cookies的存在周期 session关闭浏览器就失效了
Session的创建
首先你需要导入javax.servlet.http这个包,对应的jar文件是servlet-api.jar,在此基础上调用该包里面的HttpSession就能实例化session了,这里有关于这个包里面的参数和方法的介绍,是oracle官方的
HttpSession session = ServletActionContext.getRequest().getSession(); //创建 ActionContext.getContext().getSession().put("msg", "Hello World from Session!"); //存 session.setAttribute("softtypeid", softtypeid); //存 获取 if(session.getAttribute("softtypeid")!=null){ if(!softtypeid.equals(session.getAttribute("softtypeid"))) pager_offset=1; //如果不是同一种分类,返回是第一页 } HttpServletRequest request = ServletActionContext.getRequest(); HttpServletResponse response = ServletActionContext.getResponse(); HttpSession session = request.getSession(); //创建
用Java使内存中的Session释放相关
1,Java中request.getSession().invalidate(); 是使客户端对应的整个Session失效,里面所有东西都清空了,同时释放内存资源,注意如果
同一客户端另一种浏览器中的Session不受影响【session是跟浏览器种类有关的,不同种浏览器中的session相互独立】;
上面这个功能结合登陆用户的某个属性,如用户 ID 等,可以实现同一账号同一时间只能在一个地方登陆的功能;
//例如: request.getSession().invalidate(); //把当前客户端在服务器端对应的整个session失效
2,request.getSession().remove(); 是把session中不需要的变量清空,同时释放其所占的内存空间,而没有把整个session清空;
//例如: request.getSession().removeAttribute("xName"); //仅清空session中名称为xName的变量值,整个session其它不受影响;
相关文章推荐
- HttpSession创建session
- PHP中的session会话创建打印释放销毁;
- HttpSession每次访问都创建新的session!
- C/C++二维数组的创建与释放
- [转]Tomcat(6.0.14) Session创建机制简介
- hibernate中创建session的两种方式方式,区别在哪里?
- Qt开发:释放线程中创建的QUdpSocket对象
- 实现HttpSessionListener接口完成获取创建和销毁session的时间
- Delphi 对象的创建(create)与释放(free/destory)
- SessionFactory的创建和Session的获得
- DELPHI 动态 创建和释放 多个 EDIT 控件
- 第二天2-1,2,3,4】【自动扩展】【添加数据文件】【创建表空间】【undo表空间】【修改用户默认表空间】【释放没用的空间|移动表到新的表空间】
- C++中new和delete来创建和释放动态数组
- spring SqlSessionFactoryBean创建SqlSessionFactory
- HttpSessionListener 实现类 监听 session创建于销毁时的动作
- hibernate之session实例的创建
- delphi7 ini创建,读写,条件字节值判断,删除,释放
- 在线人数统计,解决了关闭浏览器窗口,释放session的问题
- 不可或缺 Windows Native (19) - C++: 对象的动态创建和释放, 对象的赋值和复制, 静态属性和静态函数, 类模板
- Spring MVC 通过session 创建执行任务队列