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. 201521123050 《Java程序设计》第4周学习总结

    1. 本周学习总结 2. 书面作业 1.注释的应用 1.1使用类的注释与方法的注释为前面编写的类与方法进行注释,并在Eclipse中查看.(截图) 2.面向对象设计(大作业1,非常重要) 2.1 将在 ...

  2. 201521123006 《Java程序设计》第1周学习总结

    1. 本章学习总结 (1)java在使用的过程中可以发现其本身有着许多为了节约资源而作的设计,而java根据其应用领域分为了三大平台:Java SE.Java ME与Java EE.在本周的学习中我们 ...

  3. 201521123059 《Java程序设计》第十四周学习总结

    1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结多数据库相关内容. 1.关系型数据库 --建立表格时表中一列中的数据类型必须一致.关系表中的行必须是唯一的,列是不可分的,某些行的某 ...

  4. 201521123051《Java程序设计》第九周学习总结

    1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结异常相关内容. ·所有的异常类是从 java.lang.Exception 类继承的子类. ·Exception 类是 Throwa ...

  5. 201521123106 《Java程序设计》第10周学习总结

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

  6. 在linux下通过hexdump生成一个十六进制的文本保存文件,解析此文件转变成正常源代码文件。

    举例说明: 此十六进制保存的文件为此源代码hexdump生成的: #include<stdio.h> #include<string.h> #include<stdlib ...

  7. quartz定时格式配置以及JS验证

    一个Cron-表达式是一个由六至七个字段组成由空格分隔的字符串,其中6个字段是必须的而一个是可选的,如下: ---------------------------------------------- ...

  8. css预处理语言--让你的css编写更加简单方便

    CSS预处理语言之一-------LESS Less 是一门 CSS 预处理语言,它扩展了 CSS 语言,增加了变量.Mixin.函数等特性,使 CSS 更易维护和扩展. Less 可以运行在 Nod ...

  9. css之outline实现圆角效果

    对,你没有看错,outline也可以实现圆角,不过请先读完自然会知道结果: ============================================================== ...

  10. 关于MySQL 事务,视图,索引,数据库备份,恢复

      /*创建数据库*/ CREATE DATABASE `mybank`;/*创建表*/USE mybank;CREATE TABLE `bank`(    `customerName` CHAR(1 ...