一、概述
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. Gradle构建脚本基础

    Gradle构建脚本,内部是基于 Groovy 的 DSL(领域特点语言),而Maven是基于XML的,Groovy相比XML更加简洁.灵活和强大. Groovy 因为给 Java 开发人员提供了最大 ...

  2. FreeBSD中的SYSINIT框架【转】

    SYSINIT是一个通用的调用排序与分别执行机制的框架.FreeBSD目前使用它来进行内核的动态初始化.SYSINIT使得FreeBSD的内核各子系统可以在内核或模块动态加载链接时被重整.添加.删除. ...

  3. 【Struts2学习笔记(4)】指定需要Struts 2请求后缀的常量定义复杂的过程

    一.指定需要Struts 2请求后缀处理 我们是在违约前.action后缀访问Action. 事实上默认后缀是通过不断"struts.action.extension"进行更改.例 ...

  4. mac在终端打开应用程序

    今天研究了下mac终端的启动流程.以下以sublime为例,介绍怎么在mac的终端中加入app启动方法. 方法1 :使用"open -a /Applications/Sublime\ Tex ...

  5. dot net core 使用 usb

    原文:dot net core 使用 usb 本文告诉大家如何在 dot net core 使用 usb 目录 获得通知 读写 串口通信 LGPL 首先需要打开 Nuget 安装 CoreCompat ...

  6. 强烈推荐node包colors

    库链接:colors 在你的 node.js 控制台中获取颜色

  7. WPF 控制程序只能启动一次

    原文:WPF 控制程序只能启动一次 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/jsyhello/article/details/7411898 ...

  8. bash实现多进程运行

    之前一段时间,发现线上日志服务器总是会突然丢失日志,碰到问题时搞的很被动.联系运维同学,又总是被往后推(后来看了一下日志归档脚本,运维同学写的bug).索性自己写了一个脚本,添加到crontab任务中 ...

  9. 分析MySQL各项指标

    MySQL各项指标(因为这不是大多数搜索引擎的区别故意) INDEX(总指数):主要指标,不管是什么限制 ALTER TABLE `table_name` ADD INDEX index_name ( ...

  10. Qt on Android 资源文件系统qrc与assets

    使用 Qt 为 Android 开发应用时,有时我们的应用会携带一些资源文件,如 png . jpg 等,也可能有一些配置文件,如 xml 等,这些文件放在哪里呢?有两种方式:qrc和assets,咱 ...