cookie  深度解析:  http://blog.csdn.net/ghsau/article/details/20395681

cookie 的作用:

利用存在客户端本地的缓存让无状态的服务器也能识别客户端;

cookie 

既可以被服务器都写 也可以的js脚本读写; 但如果设置了HttpOnly属性; 脚本将无法读写;

javax.servlet.http.Cookie  这个类可以设置 设置cookie的名称、内容、作用路径、作用域、协议、生存周期,but不能设置HttpOnly属性 ; 
但可以通过 响应头来 设置 httpOnly属性: response.setHeader("Set-Cookie", "cookiename=value;Path=/;Domain=domainvalue;Max-Age=seconds;HttpOnly"); 
java Cookie 的创建:
cookie的创建:
    Cookie cookie = new Cookie("test_key", "test_value");
cookie.setPath("/");
   cookie.setDomain(".ghsau.com");
response.addCookie(cookie);

cookie的获取:

    // 输出cookies,过滤掉JSESSIONID
Cookie[] cookies = request.getCookies();
if(cookies != null) {
for(Cookie cookie : cookies) {
if(cookie.getName().equals("JSESSIONID")) continue;
out.println(cookie.getName() + "-" + cookie.getValue());
}
}

JavaScript  Cookie的创建:

function setCookie(c_name, obj, expiredays) {
var value = JSON.stringify(obj); // 如果穿进来是个对象;先将对象转换成json字符串;
var exdate = new Date();
if(expiredays == null ) expiredays = 31; //默认cookie保存 31天;
exdate.setDate(exdate.getDate() + expiredays);
document.cookie = c_name + "=" + escape(value) + ";expires=" + exdate.toGMTString();
}

cookie 与 域名的关系:

1: cookie默认情况下作用域为当前域名。

2; cookie作用域为父级域名时,所有子级域名都可以得到该cookie,

3: cookie不能跨二级域名设置。

cookie 揭秘:  http://www.cnblogs.com/zhangziqiu/archive/2009/08/06/cookies-javascript-aspnet.html 

cookie 是如何传递的?

(1):页面 请求 ;  在请求一个页面的Http头中,会将属于此页面的本地Cookies信息加在Http头中 ;

Cookie: My.Common.TestCookieInfo=Pkid=999&TestValue=aaabbbcccdddeee 

(2) 服务器响应: 如果页面写入Cookies信息,则返回的Http如下:

Set-Cookie: My.Common.TestCookieInfo=Pkid=999&TestValue=aaabbbcccdddeee; expires=Fri, 07-Aug-2009 03:40:59 GMT; path=/ 

cookie 的限制: 

1: 大小: 4096 字节;

2: 个数: 每个站点 20个; 最多约 300个 ;

cookie的存储格式:

1) js: document.cookie 是一个字符串 
2) java: 是一个数组;
Cookie[] cookies = request.getCookies(); 
cookie的内容编码格式:
Cookies的值中可以保存除了“;”以外的标点符号。但是不能保存汉字。保存汉字会出现乱码。

javaWeb 基础知识的更多相关文章

  1. JavaWeb基础知识总结

    JavaWeb基础知识总结.   1.web服务器与HTTP协议 Web服务器 l WEB,在英语中web即表示网页的意思,它用于表示Internet主机上供外界访问的资源. l Internet上供 ...

  2. 超详细的Java面试题总结(四 )之JavaWeb基础知识总结

    系列文章请查看: 超详细的Java面试题总结(一)之Java基础知识篇 超详细的Java面试题总结(二)之Java基础知识篇 超详细的Java面试题总结(三)之Java集合篇常见问题 超详细的Java ...

  3. [Java面试三]JavaWeb基础知识总结.

    1.web服务器与HTTP协议 Web服务器 l WEB,在英语中web即表示网页的意思,它用于表示Internet主机上供外界访问的资源. l Internet上供外界访问的Web资源分为: • 静 ...

  4. JavaWeb基础知识

    一.WEB基本概念 1.1.WEB开发的相关知识 WEB,在英语中web即表示网页的意思,它用于表示Internet主机上供外界访问的资源. Internet上供外界访问的Web资源分为: 静态web ...

  5. JavaWeb 基础知识补充

    软件架构 1. C/S: Client/Server 客户端/服务器端         * 在用户本地有一个客户端程序,在远程有一个服务器端程序         * 如:QQ,迅雷...        ...

  6. 超详细的Java面试题总结之JavaWeb基础知识总结

    ervlet总结: 在Java Web程序中,Servlet主要负责接收用户请求HttpServletRequest,在doGet(),doPost()中做相应的处理,并将回应HttpServletR ...

  7. 走进JavaWeb技术世界1:JavaWeb的由来和基础知识

    本系列文章将整理到我在GitHub上的<Java面试指南>仓库,更多精彩内容请到我的仓库里查看 https://github.com/h2pl/Java-Tutorial 喜欢的话麻烦点下 ...

  8. JAVAWeb入门之JSP基础知识

    也是到了考试周,很多课都结了,准备去学点新东西.随后就开始自学JAVAWeb. 要学习JAVAWeb,首先需下面的知识: a)      HTML/CSS/JS(前端页面),XML,JSON,vue ...

  9. Java学习-033-JavaWeb_002 -- 网页标记语言JSP基础知识

    JSP 是 Sun 公司提倡的一门网页技术标准.在 HTML 文件中,加入 Java 代码就构成了 JSP 网页,当 Web 服务器访问 JSP 请求的时候,首先执行其中的 Java 程序源码,然后以 ...

随机推荐

  1. 201521123003《Java程序设计》第4周学习总结

    1. 本章学习总结 你对于本章知识的学习总结 1.1 尝试使用思维导图总结有关继承的知识点. 参考资料: 百度脑图 XMind 1.2 使用常规方法总结其他上课内容. (1)了解了类型转换(cast) ...

  2. 201521123104 《Java程序设计》 第10周学习总结

    1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结异常与多线程相关内容. 2. 书面作业 1. finally(题目4-2) 1.1 截图你的提交结果(出现学号) 1.2 4-2中f ...

  3. python之---进程

    一.进程 1.什么是进程 (1)正在进行的一个过程或者说一个任务,而负责执行的就是CPU 2.进程与程序的区别 (1)程序仅仅是一堆代码而已,而进程指的是程序的运行过程 同一个程序执行两次,也是两个进 ...

  4. Java Annotation注解继承说明

    有关Annotation的继承说明: 1.JDK文档中的说明是:只有在类上应用的Annotation才能被继承,而实际应用时的结果是:除了类上应用的Annotation能被继承外,没有被重写的方法的A ...

  5. Markdown使用简单示例

    标题示例: 标题一 #标题一 标题二 #标题二 标题三 ###标题三 标题四 ####标题四 标题五 #####标题五 标题六 ######标题六 连接示例 [![License](图片地址)](跳转 ...

  6. 基于maven创建和部署Webx项目

    1.准备工作 下载 Webx Maven 项目的目录结构Artifact插件. archetype-webx-quickstart-1.0.tar.gz插件:http://central.maven. ...

  7. 【bzoj2761】[JLOI2011]不重复数字

    给出N个数,要求把其中重复的去掉,只保留第一次出现的数. 例如,给出的数为1 2 18 3 3 19 2 3 6 5 4,其中2和3有重复,去除后的结果为1 2 18 3 19 6 5 4. Inpu ...

  8. 玩转 sublime3 第二弹 ES6环境

    安装node: node作为JS的运行环境必须安装 文件下载:https://nodejs.org/dist/v6.11.4/node-v6.11.4-x64.msi 备注:可以去官网 https:/ ...

  9. Centos7 创建本地 docker 仓库极其遇到的问题

    环境安装: VirtualBox 安装 Centos7 安装 docker 1. 配置私有仓库和客户端地址 私有仓库:192.168.1.104 客户端:192.168.1.103 通过 Centos ...

  10. ServletListener对象学习笔记

    JavaWeb学习笔记--监听器详解 知识概要: 1.监听器下例子举例 2.Servlet规范中的监听器 3. 4. 1. 监听器下例子举例说明: /* Frame:事件源.发生事件的对象 Windo ...