session是如何工作的?我知道cookie的大概情况 就是服务器端定义一些cookie对象 再设置些属性 把这些cookie对象添加响应消息里面 浏览器访问的时候会自动把这些cookie再传回来 session是怎样的?书上感觉说的不是很明确 好像直用request.getSession()得到的 那这个sessison到底是什么时候生成的?如何生成的?
是服务器自动生成的吗?如果是 那也就是说HttpSession session=request.getSession();这句不管有没有 这个session都是存在的? 如果不是 那为什么不是response.getSession() ?Session不是存在于服务器端的吗?

解决方案 »

  1.   

    当用户请求来自应用程序的 Web 页时,如果该用户还没有会话,则 Web 服务器将自动创建一个 Session 对象。当会话过期或被放弃后,服务器将终止该会话。HttpSession session=request.getSession() 获得session,没有的话就创建
      

  2.   

    额```
    cooike是存储在客户端的
    Session是存储在服务器上的,当新打开浏览器浏览网页的时候,服务器就为你分配一个session  id来标识
      

  3.   

    首先,session是一个对象,它是JSP的一个内置对象(也是asp的)。
    session对象和客户端的绘画紧密联系在一起,它由容器自动创建生成的。
    而Response是另一个对象,它们都可以被直接调用。
    session是用来保存用户信息的,Response是用来响应客户端的请求的。
    详细的区分和作用建议你去找一本与Java Web相关的书来看看。
      

  4.   

    当你每打开一个新的浏览器(不是在一个浏览器里面页面跳转)时,WEB服务器(容器)就会为你创建一个新的SESSION。
    暂时还只知道SESSION能保存对象、文本..来传递和处理服务器和客户端之间的数据。
    写得不好,请不要介意
      

  5.   

    说的简单一点,COOKIE 就是你登陆了个网站,网站发给你一个牌,跟员工卡性质差不多,保存在你那(寸在你电脑里了)。
    功能不多,容易不大,勉强记录些小信息。
     
    SESSION 就相当于网站给你发的来宾卡,你登陆的时候发给你,走的时候得交还给人家, 在你拿SESSION牌期间,别人可以通过你的牌子识别你的身份信息等,也就是全局跟踪的性质,你拿卡期间,你的所做做为都可以记录。  这比喻怎么样? 够简单了吧
        COOKIE 象个兜子,SESSION就是个筐了。
      

  6.   

    用我知道怎么用 只是不知道它到底是怎么回事
    cookie是自己定义的 通过response发送给浏览器 里面记录了一些信息 然后浏览器把cookie保存 浏览器再通过request把cookie返回来 这个过程很好理解
    这个session我真的无法理解 打比方没用 我想知道实际过程 我不知道它是从哪里出现的 源头在哪? 存放在哪?如何存放的?如何交互?
      

  7.   

    用我知道怎么用 只是不知道它到底是怎么回事
    cookie是自己定义的 通过response发送给浏览器 里面记录了一些信息 然后浏览器把cookie保存 浏览器再通过request把cookie返回来 这个过程很好理解
    这个session我真的无法理解 打比方没用 我想知道实际过程 我不知道它是从哪里出现的 源头在哪? 存放在哪?如何存放的?如何交互?
      

  8.   

    用我知道怎么用 只是不知道它到底是怎么回事
    cookie是自己定义的 通过response发送给浏览器 里面记录了一些信息 然后浏览器把cookie保存 浏览器再通过request把cookie返回来 这个过程很好理解
    这个session我真的无法理解 打比方没用 我想知道实际过程 我不知道它是从哪里出现的 源头在哪? 存放在哪?如何存放的?
      

  9.   

    找了本jsp的书来看 对session的介绍只有4行字 不过有句话很受用 “session对象的信息保存在服务期中,但ID保存在客户机的Cookie中” 这样我就又理解了一点 但还是有很多疑问 是不是服务器的session对象里面也有这个ID?他说“一般在使用session对象时不必考虑其实现的细节问题” 但是我现在就是很想知道这个细节问题 网上找的session祥解好像也无法让我理解这个过程 看的张孝祥的java web核心基础也无法让我理解这个过程 不知道这个session到底是什么东西 谁能给我详细解释下阿 我只想知道它的工作过程 明天加分到100 才发的贴现在不能加
      

  10.   

    session是一直保存在web服务器运行的内存里面的.
    距离比如tomcat,session一直在内存里面,如果停止掉web服务器,则会将session存储在本地硬盘上面,在work文件夹内会多一个session.ser的文件.如果重新启动web服务器,这个文件则会消失,重新加载到web服务器的运行内存里面.
    所以在写大型门户站之类的时候,尽量在session少保存东西,以免内存消耗过高.另外在每个用户访问的时候,会给每一个用户分配一个唯一的JsessionID,这个就是唯一的标识,是用户与web服务器之间的标识号.如果新开ie窗口,新开的ie窗口则会继承这个JsessionID,因此可以继续session跟踪.
      

  11.   

    session是一直保存在web服务器运行的内存里面的.
    距离比如tomcat,session一直在内存里面,如果停止掉web服务器,则会将session存储在本地硬盘上面,在work文件夹内会多一个session.ser的文件.如果重新启动web服务器,这个文件则会消失,重新加载到web服务器的运行内存里面.
    所以在写大型门户站之类的时候,尽量在session少保存东西,以免内存消耗过高.另外在每个用户访问的时候,会给每一个用户分配一个唯一的JsessionID,这个就是唯一的标识,是用户与web服务器之间的标识号.保存在cookie里.如果新开ie窗口,新开的ie窗口则会继承这个JsessionID,因此可以继续session跟踪.