Cookie、Session、Application

  客户端像服务器发起http请求,服务器向客户端响应,然后连接就断开了,等下次再访问服务器时,是无法得知上一次的信息的,为了记录之前的信息,可以通过下面三种方式

Cookie

  1、记录在客户端的名值对信息。

  2、如果没有设置时间,则写入内存,关闭当前窗口则Cookie就消失了,否则会写入客户端的文本文件,即使关闭浏览器,再打开仍然能访问。

  3、只能访问自己网站写入的信息。

  4、浏览器可以设置不允许写入Cookie。

  5、一个servlet/jsp设置的Cookie只能被同一个url下面或子url下面的servlet/jsp读到

Session

  1、记录在服务器的名值对信息。

  2、过期时间在web.xml中配置

  3、服务器可以为每个窗口分配一个唯一的sessionid,如果客户端允许写入Cookie,则会写入Cookie中,这个窗口再向服务器发送http请求时,服务器可以通过读取客户端的Cookie获取sessionid,从而识别每个客户端,如果客户端禁止写入Cookie,则只能把url通过response.encodeURL方法处理下,强制在url中加上sessionid参数。

  4、同一个web application下的servlet/jsp可以共享同一个session,前提是同一个客户端窗口。

Application

  1、记录在服务器端的名值对信息

  2、用于保存整个web application的生命周期内都可以访问的数据,只有一个Application

  3、在api中,通过ServletContext实现

  4、通过HttpServlet的getServletContext方法可以拿到这个Application

posted @ 2017-11-21 17:02  清乾隆  阅读(74)  评论(0)    收藏  举报