Session and cookie


理解Cookie和Session机制

http://www.importnew.com/18943.html




static final int DEFAULT_INITIAL_CAPACITY = 16这个是hasmmap默认的大小。
static final int MAXIMUM_CAPACITY = 1 << 30; hashmap最大的容量,也就是2的幂30。
static final floatDEFAULT_LOAD_FACTOR = 0.75f 负载因子,这里取了0.75似乎java的工程师认为,100个盒子在用了75个的状态下,
既能保证get的速度,将collision降的比较低,又不会浪费太多的盒子,文献上说,这个值大概在2/3左右即可
JAVA开发 SESSION和COOKIE的关系 http://blog.itpub.net/26770925/viewspace-1393608/
Java详解Session和Cookiehttp://blog.sina.com.cn/s/blog_4f925fc30100mo95.html
Cookie/Session机制详解http://www.open-open.com/lib/view/open1405483246415.html
JAVA开发 Servlet和Tomcat相关基础http://blog.itpub.net/26770925/viewspace-1392237/
在JAVA中使用response.sendRedirect和使用RequestDispatcher.forward的区别
http://blog.itpub.net/26770925/viewspace-1392237/
HTTP协议http://xiebh.iteye.com/blog/334591
Cookie深度解析http://blog.csdn.net/ghsau/article/details/20395681#comments
 Cookie深度解析http://blog.csdn.net/ghsau/article/details/20395681#comments
Web协议(也就是HTTP)是一个无状态的协议(HTTP1.0)
HTTP1.1版本是支持持久连接的
Cookie组成
cookie是由名称、内容、作用路径、作用域、协议、生存周期组成,另外还有个HttpOnly属性,HttpOnly属性很重要,
如果您在cookie中设置了HttpOnly属性,那么通过js脚本(document.cookie)将无法读取到cookie信息,这样能一定程度上的防止XSS攻击,
关于XSS可以看我之前的文章--XSS攻击及防御。Tomcat服务器设置的JSESSIONID就是HttpOnly的
1. cookie默认情况下作用域为当前域名
2. cookie作用域为父级域名时,所有子级域名都可以得到该cookie
3. cookie不能跨二级域名设置
Cookie安全性
我们通常需要对cookie内容进行加密
重要的cookie数据需要设置成HttpOnly的,避免跨站脚本获取你的cookie,保证了cookie在浏览器端的安全性
设置cookie只作用于安全的协议(https),JavaEE中可以通过Cookie类的setSecure(boolean flag)来设置
设置后,该cookie只会在https下发送,而不会再http下发送,保证了cookie在服务器端的安全性,服务器https的设置可以参照该文章
共同父域下的单点登录http://blog.csdn.net/ghsau/article/details/20466351
 完全跨域的单点登录http://blog.csdn.net/ghsau/article/details/20545513
Session深度解析http://blog.csdn.net/ghsau/article/details/13023425
JavaEE 要懂的小事:三、图解Session(会话)http://ifeve.com/javaee-3-session/
通向架构师的道路(第二天)之apache tomcat https应用
http://blog.csdn.net/lifetragedy/article/details/7699236
并发编程网 - ifeve.comhttp://ifeve.com/
聊聊并发(一)——深入分析Volatile的实现原理
http://www.infoq.com/cn/articles/ftf-java-volatile/
一个广为人知但鲜有人用的技巧:对象池
http://www.infoq.com/cn/news/2015/07/ClojureWerkz
深入理解Java内存模型(三)——顺序一致性
http://www.infoq.com/cn/articles/java-memory-model-3
servlet/filter/listener/interceptor区别与联系
http://www.cnblogs.com/doit8791/p/4209442.html
web.xml 的加载顺序是:context- param -> listener -> filter -> servlet
servlet,filter都是针对url之类的,而listener是针对对象的操作的,如session的创建,session.setAttribute的发生,在这样的事件发生时做一些事情
interceptor 拦截器,类似于filter,不过在struts.xml中配置,不是在web.xml,并且不是针对URL的,而是针对action,当页面提交action时,进行过滤操作
相当于struts1.x提供的plug-in机制,可以看作,前者是struts1.x自带的filter,而interceptor 是struts2 提供的filter
与filter不同点:
(1)不在web.xml中配置,而是在struts.xml中完成配置,与action在一起
(2) 可由action自己指定用哪个interceptor 来在接收之前做事
struts2中的过滤器和拦截器的区别与联系:
      (1)、拦截器是基于java反射机制的,而过滤器是基于函数回调的。
      (2)、过滤器依赖与servlet容器,而拦截器不依赖与servlet容器。
      (3)、拦截器只能对Action请求起作用,而过滤器则可以对几乎所有请求起作用。
      (4)、拦截器可以访问Action上下文、值栈里的对象,而过滤器不能。
      (5)、在Action的生命周期中,拦截器可以多次调用,而过滤器只能在容器初始化时被调用一次
Servlet 工作原理解析http://www.ibm.com/developerworks/cn/java/j-lo-servlet/


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值