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文档;

     

  • 相关阅读:
    使用PHP建立GIF
    无数据库的详细域名查询程序PHP版
    用PHP实现通过Web执行C/C 程序
    判断一数是否在一已知数组中的函数
    如何将本地项目上传到码云
    IIS服务器,IIS日志文件占用C盘空间,C盘空间不足 常见问题
    谈谈个人能力的系统性
    毕业后5年决定命运
    个人取得工资、薪金所得应当如何缴纳个人所得税
    Chart 控件 for vs2008的安装
  • 原文地址:https://www.cnblogs.com/elvinni/p/2677576.html
Copyright © 2011-2022 走看看