Java学习之路——基础阶段二(第十五篇)

我的学习阶段是跟着CZBK黑马的双源课程,学习目标以及博客是为了审查自己的学习情况,毕竟看一遍,敲一遍,和自己归纳总结一遍有着很大的区别,在此期间我会参杂Java疯狂讲义(第四版)里面的内容。
  前言:此随笔主要是Java基础中的基础,相信大家对这方面肯定有着自己的理解和认识,具体详解可以参照万能的baidu,有的我就一笔带过,希望在我的学习之路上能够有大牛进行指导,也有更多的小伙伴共勉。

1.cookie和session了解入门

cookie和session 是计算机会话技术,会话是指:一次会话中包含多次请求和响应.浏览器给服务器发送第一次请求会话建立,知道一方断开会话结束.

cookie会话技术

客户端会话技术,将数据保存到客户端.
1.快速入门:

  • 使用步骤
    1.创建Cookie对象,绑定数据
        new cookie(String name,String value)
    2.发送cookie对象
        response.addcookie(Cookie cookie)
    3.获取Cookie,拿到数据
        Cookie[] request.getCookies()

2.实现原理:基于响应头set-cookie和请求头cookie实现

3.cookie细节:

  1. 一次可以发送多个cookie创建多个cookie对象,用response调用addcookie即可;
  2. cookie默认存储时间是在浏览器关闭之后销毁,也可以配置数据,如果是正数,就在正数结束后进行自动销毁,如果是负数,则是默认值,如果是0则删除cookie信息.
  3. 在tomcat8中可以存储中文,但是特殊字符不支持,需要使用URL编码存储,在tomcat7之前需要进行编码设置,才可以存储中文.一般是哟个(%E3)
  4. 默认情况下cookie是不进行共享的,如果想要哦共享需要设置setpath将访问路径的虚拟目录进行修改cookie值的取值范围.
  5. 不同tomcat服务器之间的cookie是可以进行共享的可以设置domain(String path)

4.cookie的作用和特点

  1. cookie存储数据在客户端浏览器
  2. 浏览器对于单个cookie有大小限制(4kb)以及同一域名下的cookie也有数量限制(20)
  3. 作用:
       cookie一般用于存储少量不敏感的数据;
       在不登陆的情况下对客户端身份进行识别.

session主菜:服务器端的会话技术

服务器端的会话技术,再一次会话的多次请求间共享数据,将数据存储到服务器的对象中.HttpSession
1.快速入门
4. 获取HttpSession对象
    HttpSession session = request.getsession();

  1. 使用HttpSession对象
        getAttribute(String name)
        setAttribute(String name , Object value)
        removeAttribute(String name)

2.Session的实现是依赖于cookie的
3.Session细节

  1. 当客户端关闭后,服务器是不关闭的,那么两次获取的Session一般不是同一个;如果需要的话可以创建Cookie,键位JSESSIONID设置最大存活时间,让cookie持久化保存;
  2. 客户端不关闭,服务器端关闭,两次获取的session不是同一个,但是要确保数据不丢失,tomcat一般要自动完成如下操作:
        -Session的钝化操作,在服务器未关闭前,将数据存储到硬盘上;
        -Session的火花操作,在服务器打开后,将session文件转化为内存中的session对象.
    3.session什么时候被销毁?一般是服务器关闭时销毁,也可以session对象调用invalidate(),或者是默认失效时间30分钟,选择配置进行修改<Session-config>内的<session-timeout>修改时间

4.Session的特点:

  • session用于存储一次会话的多次请求数据,存在服务器端,
  • session可以存储任意类型,任意大小的数据
Cookie和Session的区别
  1. session存储数据在服务器端,cookie存储在客户端
  2. session没有数据带下限制,cookie有
  3. session数据安全,cookie相对不安全.

猜你喜欢

转载自blog.csdn.net/Mr_ZhaoYanze/article/details/90108128