当前位置: 首页 > news >正文

Java session 常用方法及用例

session与cookie 常见方法及用例

session

服务器可以为每个用户浏览器创建一个会话对象(session对象),一个浏览器只能产生一个session,当新建一个窗口访问服务器时,还是原来的那个session。session中默认保存的是当前用户的信息。因此,在需要保存其他用户数据时,我们可以自己给session添加属性。session(会话)可以看为是一种标识,通过带session的请求,可以让服务器知道是谁在请求数据

Cookie的定义

网站为了辨别用户身份、进行session跟踪而存储在用户本地终端上的数据(通常经过加密)。也就是说如果知道一个用户的Cookie,并且在Cookie有效的时间内,就可以利用Cookie以这个用户的身份登录这个网站。

  会话cookie和持久cookie的区别?如果不设置过期时间,则表示这个cookie生命周期为浏览器会话期间,只要关闭浏览器窗口,cookie就消失了。这种生命期为浏览会话期的cookie被称为会话cookie。会话cookie一般不保存在硬盘上而是保存在内存里。如果设置了过期时间,浏览器就会把cookie保存到硬盘上,关闭后再次打开浏览器,这些cookie依然有效直到超过设定的过期时间。 存储在硬盘上的cookie可以在不同的浏览器进程间共享,比如两个IE窗口。而对于保存在内存的cookie,不同的浏览器有不同的处理方式。

session与cookie区别和联系

session是由服务器创建的,并保存在服务器上的。在session创建好之后,会把sessionId放在cookie中返回(response)给客户端。返回的代码应该是这样子的。返回的cookie是保存在客户端的。

@RequestMapping(value = "/test",method = RequestMethod.POST)public void test(HttpServletRequest request,HttpServletResponse response) throws IOException {/*** session 常见方法* .getId() 获取sessionId* .isNew() 判断Session是否是新的(如果客户端请求消息中返回了一个与Servlet程序当前获得的HttpSession对象的会话标识号相同,*          则认为这个HttpSession对象不是新建的),如果session存在则赋值,否则创建一个新的session* .setMaxInactiveInterval(int value) 设置session最大时效 时间单位秒;* .getMaxInactiveInterval() 获取session最大时效* .getCreationTime() 获取session创建时间* .getLastAccessedTime() 获取session最后访问时间* .invalidate() 销毁session对象* .setAttribute(String key, Object value); 设置session 对象中的数据* .getAttribute(String key) 获取session存储的信息* .removeAttribute(String name); 删除session中存储的数据*//*** 创建一个session request.getSession() 效果等同于 true* true:如果这个http请求如果有session,择直接通过.getSession()获取一个session,否则创建一个新的;当前session中存取信息时使用* false:只能获取当前请求中的session,如果没有则不会创建,且返回null 若无法确定会话一定存在,则推荐使用;当前session中获取信息时使用*/HttpSession session=request.getSession(false);/*** session.isNew()  此方法,判断session是否已被创建,作用等同于 request.getSession(true),二者选其一即可*///session.isNew();session.setAttribute("data","测试啊");//session中添加数据Cookie cookie=new Cookie("JSESESSION",session.getId());//创建cookie,且保存sessioIDcookie.setPath(request.getContextPath());response.addCookie(cookie);//将session 返回请求}
http://www.xdnf.cn/news/844777.html

相关文章:

  • Mac OS X Lion:狮子来了
  • Autonomous Driving in Adverse Weather Conditions: A Survey - 恶劣天气条件下的自动驾驶:一项调查 (arXiv 2021)
  • PHP headers_sent() 函数
  • 微博登录接入出现错误码21322(重定向地址不匹配),其他解决方法
  • C语言scanf()函数详解
  • 【C++ static_cast】类型转换
  • Linux下LDAP统一认证解决方案
  • linux权限 rwxr xr x,小白求助:权限rwxr-xr-x是啥意思?
  • 微信小程序毕业设计-网上商城系统项目开发实例(附源码+演示视频+LW)
  • 分享158个ASP源码,总有一款适合您
  • 最新cs1.5僵尸服务器ip,最新cs1.5战网服务器IP
  • 网站被攻击怎么办?
  • ALVcheckbox相关数据同时勾选或者同时取消_SAP刘梦_新浪博客
  • DPlayer 开源项目教程
  • JavaScript 网页特效
  • 视频会议十大开源项目排行
  • 免费空间
  • 串口RS232、RS485最本质区别
  • 履带无人车+无人机+自组网:空地一体化技术详解
  • 四种IP广播地址
  • 阿里云服务器 安装mysql
  • 微软 Visual Studio 2017 RC 中文版下载 - 免费社区版/专业版/企业版
  • 永恒之蓝漏洞补丁-MS17010补丁列表KB号
  • OpenCV CornerHarris角点检测(C#)
  • 金融专业英语词汇大全
  • java聊天室回调_用JavaEE7、Websockets和GlassFish4打造聊天室(一)
  • TOGAF架构开发方法
  • flowable使用流程任务和监听器设计知会我的任务
  • 调用ThunderAgent 迅雷局域网版的开发
  • 如何监控员工电脑的聊天记录