Session会话

什么是Session会话

  1.Session就是一个接口(HttpSession)

  2.Session就是会话,它是用来维护一个客户端和服务器之间关联的一种技术

  3.每个客户端都有自己的一个Session会话

  4.Session会话中,我们经常用来保存用户登录之后的信息。

如何创建Session和获取(id号,是否为新)

  如何创建和获取Session。它们的API是一样的。

  request.getSession()

    第一次调用是:创建Session会话

    之后调用都是:获取前面创建好的Session会话对象

  isNew():判断到底是不是刚创建出来的(新的)

    true表示刚创建

    false表示获取之前创建

  每个会话都有一个身份号码,也就是ID值。而且这个ID是唯一的。

  getid()得到Session多段的会话id值。

 

   Session域数据的存取:

  

 

   Session生命周期控制

 

 

    值为正数的时候,设定Session的超时时长

    值为负数表示永不超时(极少使用)

public viod setMaxinactiveInterval(int interval)  这是Session的超时时间(以秒为单位),超过指定的时长,Session就会被销毁。

 

     

 

public int getMaxinactiveInterval(int interval)  获取Session的超时时间

 

 

public void invalidate()让当前session会话马上超时无效

 

  Session的超时时长是多少?

  Session默认的超时时长为30分钟。

  因为在Tomcat服务器的配置文件web.xml中默认有以下的配置:它就表示配置了当前Tomcat服务器下所有的Session超时配置默认时长为:30分钟。

  

 

   如果说,你希望你的web工程,默认的Session的超时时长为其他时长。你可以在你自己的web.xml配置文件中做以上相同的配置。就可以修改你的web工程所有的Session的默认超时时长。(需要重新部署生效)

  

 

   如果想只修改个别的Session的超时时长,就可以使用上面的API:setMaxinactiveInterval(int interval)来进行单独的设置。

  session.setMaxinactiveInterval(int interval)单独设置超时时长。

session超时的概念介绍:

 

 示例代码:

 

 

 

  浏览器和Session之间关联的技术内幕:

   Session技术,底层其实是基于Cookie技术来实现的。

 

posted @ 2021-11-16 19:24  Soleili  阅读(163)  评论(0编辑  收藏  举报