一、概述
Cookie是Web服务器保存在客户端的一系列文本信息

典型应用一:判断注册用户是否已经登录网站。
典型应用二:”购物车“的处理。

Cookie的作用:
    对特定对象的追踪
    保存用户网页浏览记录与习惯
    简化登录

安全风险:容易泄露用户信息

cookie保存对象大小是有限制的,包括每个域名所包含的cookie数,cookie的总大小,这些均与使用的浏览器有关。在所有浏览器中,任何cookie大小超过限制的都会被忽略,且永远不会被设置。



二、Cookie与session的共同点与区别

共同点:都是用来保存用户状态的一种机制,并且都有生存期限,都会过期
区别:
session cookie
在服务器端保存用户信息 在客户端保存用户信息
session中保存的是object类型 cookie保存的是string类型
随会话的结束而将其存储的数据销毁 cookie可以长期保存在客户端
保存重要信息 保存不重要信息,如用户习惯




三、应用
创建Cookie对象
Cookie newCookie = new Cookie(String key,Object value);
写入Cookie对象
response.addCookie(newCookie);
读取Cookie对象
Cookie[] cookies = request.getCookies();

示例:
通过request获得用户名密码后将其保存到Cookie中
  1. // 通过request获取用户名密码
  2. String username = URLEncoder.encode(request.getParameter("username"), "utf-8");
  3. String password = request.getParameter("password");
  4. // 将用户密码保存到Cookie中
  5. Cookie usernameCookie = new Cookie("username", username);
  6. Cookie passwordCookie = new Cookie("password", password);
  7. // 设置Cookie的最大生存期限(单位为秒)
  8. usernameCookie.setMaxAge(864000);
  9. passwordCookie.setMaxAge(864000);
  10. // 通过response对象将Cookie保存
  11. response.addCookie(usernameCookie);
  12. response.addCookie(passwordCookie);
从Cookie中获取用户名密码并将其赋值给username和password
  1. String username = "";
  2. String password = "";
  3. // 读取Cookie
  4. Cookie[] cookies = request.getCookies();
  5. if (cookies != null && cookies.length > 0) {
  6. for (Cookie c : cookies) {
  7. if (c.getName().equals("username")) {
  8. username = URLDecoder.decode(c.getValue(), "utf-8");
  9. }
  10. if (c.getName().equals("password")) {
  11. password = c.getValue();
  12. }
  13. }
  14. }


本笔记地址(如果页面显示效果不好可以直接看笔记)

Cookie概述与应用的更多相关文章

  1. ASP.NET Cookie 概述【转】

    来源:http://msdn.microsoft.com/zh-cn/library/ms178194(VS.80).aspx ASP.NET Cookie 概述 Cookie 提供了一种在 Web ...

  2. Java:HttpClient篇,Cookie概述,及其在HttpClient4.2中的应用

    1. Cookie 概述 Cookie是什么? Cookie 是一小段文本信息,伴随着用户请求和页面在 Web 服务器和浏览器之间传递.Cookie 包含每次用户访问站点时 Web 应用程序都可以读取 ...

  3. ASP.NET Cookie 概述

    什么是 Cookie? Cookie 是一小段文本信息,伴随着用户请求和页面在 Web 服务器和浏览器之间传递.Cookie 包含每次用户访问站点时 Web 应用程序都可以读取的信息. 例如,如果在用 ...

  4. Cookie概述

    一.什么叫Cookie? Cookie翻译成中文是小甜点,小饼干,在Http中它表示服务器送给客户端浏览器的小甜点.其实Cookie就是一个键和一个值构成,随着服务器端的响应发送给客户端浏览器,然后客 ...

  5. Cookie 概述

    一.属性介绍 Name Cookie的key Value Cookie的value Domain 可以访问此Cookie的域名 Path 可以访问此Cookie的页面路径 Expires/Max-Ag ...

  6. 本地存储之cookie

    cookie概述: Cookie 在计算机中是个存储在浏览器目录中的文本文件,当浏览器运行时,存储在 RAM 中发挥作用 (此种 Cookies 称作 Session Cookies), 一旦用户从该 ...

  7. javascrip中cookie的使用详细分析

    JavaScript中的另一个机制:cookie,则可以达到真正全局变量的要求. cookie是浏览器 提供的一种机制,它将document 对象的cookie属性提供给JavaScript.可以由J ...

  8. 细说Cookie

    阅读目录 开始 Cookie 概述 Cookie的写.读过程 使用Cookie保存复杂对象 Js中读写Cookie Cookie在Session中的应用 Cookie在身份验证中的应用 Cookie的 ...

  9. js中cookie的使用详细分析

    JavaScript中的另一个机制:cookie,则可以达到真正全局变量的要求. cookie是浏览器 提供的一种机制,它将document 对象的cookie属性提供给JavaScript.可以由J ...

随机推荐

  1. 【codeforces 782C】Andryusha and Colored Balloons

    [题目链接]:http://codeforces.com/contest/782/problem/C [题意] 给你一棵树 让你满足要求 ->任意相连的3个节点的颜色不能相同 的情况下进行染色 ...

  2. scala 主从构造器

    package cn.scala_base.oop.scalaclass /** * 构造器分为两种,一种是主构造器,另一种是从构造器,所有的从构造器必须在其方法体 * 的第一行调用主构造器 * * ...

  3. 【21.37%】【codeforces 579D】"Or" Game

    time limit per test2 seconds memory limit per test256 megabytes inputstandard input outputstandard o ...

  4. handsontable前端excel学习笔记

    暂时没有好的中文资料,大概找了三遍随便看看,之后重点研究其github 1.Handsontable 学习笔记-Methods 2. Handsontable通用方法 3.handsontable的核 ...

  5. 最简单的基于JavaEE和FFmpeg的视频网站

    最简单的视频网站 Simplest Video Website 雷霄骅 Lei Xiaohua leixiaohua1020@126.com 中国传媒大学/数字电视技术 Communication U ...

  6. ubuntu grub 操作

    系统开机时,按住 shift 进入 grub 1. 什么是 Grub GNU GRUB(GRand Unified Bootloader 简称"GRUB")是一个来自GNU项目的多 ...

  7. uow Unit of work

    通过学习圣杰的文章  UnitOfWork知多少  知道uow其实就是为了解决 一次提交所有更改 1.ef本身可以具备这样一个功能,但是我们在写仓储的实现的时候 经常会直接显式saveChanges了 ...

  8. matlab 高阶(一) —— assignin与evalin

    1. assignin assignin(ws, 'var', val) 将 val 值赋值给 ws 空间中的 var 变量,注意这里的变量,必须是 array 类型,而不可以是包含下标索引,如果在指 ...

  9. 用ORACHK自己主动化检查数据库系统的健壮性

    1.orachk工具主要用途 (1)主动检查您的整个软件在操作系统.CRS.数据库.高可用等层面中的严重问题,以便于IT部门整改,提升系统的稳定性 (2)对于您系统中存在的风险提供简单化和合理化的诊断 ...

  10. IOS status bar

    从iOS7开始,该系统提供2样的管理风格状态栏 由UIViewController管理(每UIViewController我们可以有各自不同的状态栏) 由UIApplication管理(由其统一管理的 ...