空空叶博客 学习与开发博客

web笔记

2017-05-05
web

web笔记

Cookie作什么用?

  1. 用来搞天然分布式(与session相比)
  2. 是服务端用来辨认客户端的

生命周期

Cookie有个Expire值,超过时会清除Cookie,0或负值时退出浏览器就会清除Cookie.

其它

  • Cookie大小写敏感

Http Session

这里的讨论基于java servlet

创建时间

  1. 调用HttpServletRequest.getSession(true)时创建
  2. 如果JSP没有显示的使用<%@page session="false"%>关闭session,则JSP文件在编译成Servlet时将会自动加上这样一条语句HttpSession session=HttpServletRequest.getSession(true);

删除时间

  1. Session超时(超时指的是服务器没有收到该Session所对应客户端的请求超过了最大时间)
  2. 程序调用HttpSession.invalidate()
  3. 服务器关闭或服务停止

存放位置

会话存放在服务端内存中,并可以通过特殊方式做持久化管理(项目更新时可能导致问题)

其它说明

  • 访问html静态资源因为不会被编译为Servlet也就不涉及session的问题
  • 当JSP页面没有显式禁止session的时候,在打开浏览器第一次请求该jsp的时候,服务器会自动为其创建一个session,并赋予其一个session ID,发送给客户端的浏览器。以后客户端接着请求本应用中其他资源的时候,会自动在请求头上添加Cookie: JSESSIONID=客户端第一次拿到的session ID

上一篇 tomcat优化

下一篇 一种缓存架构

目录