zoukankan      html  css  js  c++  java
  • java session 的使用和对状态的保存

    web应用为什么要使用状态保存?

    因为http协议是无状态协议,http协议是一次请求,一次响应的模式,不会去保存链接状态;

    web应用中进行状态保存的方法:

    1,在server端处理html:一般我们可以在表单中加入

    <INPUT TYPE="hidden" NAME="user"VALUE="Jennifer">
    

      或者重写URL地址

    <A HREF="/orderform.htm?user=Jennifer">Order Now!</A>
    

      这里的区别在于HTTP协议的请求行使用GET或者POST,可以查看《HTTP协议详解》;

    2,使用cookie:cookie是键值对(key,value),且这两者必须是字符串;cookie是保存在客户端的缓存或者文件,cookie的传输主体是浏览器和服务器,在浏览器这边会针对不同的server保存对应的cookie,在每次访问该server时都会把cookie发送给server;cookie是可以设置过期时间的;对于不设置过期时间这个cookie过期时间就是由浏览器决定;浏览器本身可以对cookie做一些相应的设置;

    例如chrome:

    http://support.google.com/chrome/bin/answer.py?hl=zh-Hans&answer=95647
    

      他可以默认拦截cookie;

    3,关于java中的session保存状态: 本质上session这种机制应该是使用了cookie,但是他把数据保存在了server端,而不像cookie那样每次都要由服务器端传输;它的实现机制是这样子的:对于每个浏览器的访问,用 session ID作为唯一的标识,并且保存在cookie中,有一个session manager 管理每个 session ID所对应的java object,实际上session保存的也键值对,可以这里的值可以使java object而不一定要是string,为什么可以这样的原因是这里保存的数据只在服务器端,传输中唯一使用的标志就是 session ID;session的相关使用可以查看api文档;

     

  • 相关阅读:
    C# 控制反转
    控制反转和依赖注入
    C#中使用AOP
    jquery ajax
    python(7)- 小程序练习:循环语句for,while实现99乘法表
    007所谓性格与条件并不是成功的阻碍,懦弱才是
    006学习有可能速成吗
    005自学与有人带着哄着逼着学的不同在于自学是一种成熟的自律
    005单打独斗意味着需要更好地管理自己
    004真正的教育是自我教育,真正的学习是自学
  • 原文地址:https://www.cnblogs.com/elvinni/p/2677576.html
Copyright © 2011-2022 走看看