JSP数据交互(二)application cookie

一、application
    作用于整个web项目,项目启时创建,项目关闭时销毁,由项目创建保存于服务器内存中 。
    因此application可以实现多个用户之间的数据共享
全部方法见 application方法大全 

常用方法

内置对象作用域:

二、cookie
    什么是cookies? 
    大家都知道,浏览器与WEB服务器之间是使用HTTP协议进行通信的,当某个用户发出页面请求时,WEB服务器只是简单的进行响应,然后就关闭与该用户的连接。因此当一个请求发送到WEB服务器时,无论其是否是第一次来访,服务器都会把它当作第一次来对待,这样的不好之处可想而知。为了弥补这个缺陷,Netscape开发出了cookie这个有效的工具来保存某个用户的识别信息,因此人们昵称为“小甜饼”。cookies是一种WEB服务器通过浏览器在访问者的硬盘上存储信息的手段.
    Cookie在远程浏览器端存储数据并以此跟踪和识别用户的机制。从实现上说,Cookie是存储在客户端上的一小段数据,浏览器(即客户端)通过HTTP协议和服务器端进行Cookie交互。
     Cooke独立于语言存在,严格地说,Cookie并不是由PHP、Java等语言实现的,而是由这些语言对Cookie进行间接操作,即发送HTTP指令,浏览器收到指令便操作Cookie并返回给服务器。因此,Cookie是由浏览器实现和管理的。   
    当我们连接web项目并获得响应时,会自动生成cookie(session基于cookie实现,在session创建完成后当响应时客户端时会将session id随着响应发送给cookie储存起来)。
     当我们发送请求时,如果session建立完成,就已经响应,那么此时响应里没有session id 当session建立完成后如果再发送请求,响应时session id此时会随着响应一起发送给客户端cookie.由此说明,响应并不是必须有session才能响应。
    平时浏览器上自带的存储账号密码功能使用的cookie并不是自动生成的cookie而是当用户选择保存后,浏览器预先写好的代码执行创建一个额外的cookie用来保存账号密码,与浏览器自动生成的不是同一个。

实际应用:
创建:  Cookie newCookie = new Cookie(String key, String value); 
写入:response.addCookie(newCookie); 
读取:Cookie[] cookies = request.getCookies(); 
方法:1.setMaxAge(mm) 设置cookie有效期,单位秒
          2.int getMaxAge(); 获取cookie有效期,单位秒 
          3.setValue(String value),对cookie进行赋值
          4.String getValue(); 获取cookie值
          5.String getName(); 获取cookie名称
    服务器建立cookie,会随着response发送到前台,所以建立cookie后添加至response,当客户端请求后服务器响应时发送到客户端。
    当对服务器发送请求时会将session及cookie自动发送过去,然后后台使用request获取。 

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 目录Cookie机制什么是CookieCookie的不可跨域名性Unicode编码:保存中文BASE64编码:保存...
    Tomatoro阅读 16,986评论 7 186
  • 会话(Session)跟踪是Web程序中常用的技术,用来跟踪用户的整个会话。常用的会话跟踪技术是Cookie与Se...
    chinariver阅读 5,702评论 1 49
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,107评论 19 139
  • HTTP cookie(也称为web cookie,网络cookie,浏览器cookie或者简称cookie)是网...
    留七七阅读 18,168评论 2 71
  • 五年未休,一休则大休!继青海大环线之后,我又只身来到峨眉山闭关修炼! 事有不凑巧,来到峨眉即开始下雨,从淅淅沥沥到...
    承谦阅读 561评论 0 0