session

作者: 27b0bd2612de | 来源:发表于2017-06-27 10:36 被阅读0次

    什么是session

    1.session表示客户端与服务器的一次会话。

    2.Web中的session指的是用户在浏览某个网站时,从进入网站到浏览器关闭所经过的这段时间,也就是用户浏览这个网站花费的时间。

    3.从上述定义中可以看到,session实际上是一个特定的时间概念。

    4.在服务器的内存中保存着不同用户的session。

    session对象

    1.session对象是一个JSP内置对象。

    2.session对象在第一个JSP页面被加载时自动创建,完成会话期管理。

    3.从一个客户打开浏览器并连接到服务器开始,到客户关闭浏览器离开这个服务器结束,被称为一个会话。

    4.当一个客户访问一个服务器时,可能会在服务器的几个页面之间切换,服务器应当通过某种方法知道这是一个客户,就需要session对象。

    5.session对象是HttpSession类的实例。

    常用方法:

    1.long getCreationTime(): 返回session创建时间

    2.public String getId(): 返回session创建时JSP引擎为它设的唯一ID号。

    3.public Object setAttribute(String name,Object value):使用指定名称将对象绑定到此会话。

    4.public Object getAttributes(String name):返回与此会话中指定名称绑定在一起的对象,如果没有对象绑定在该名称下,则返回null。

    5.String[] getValueNAmes():返回一个包含此session中所有可用属性的数组。

    6.int getMaxInactiveInterval():返回两次请求间隔多少时间此session被取消(单位秒)。

    生命周期:

    创建:当客户端第一次访问某个jsp或者Servlet时候,服务器会为当前会话创建一个SessionId,每次客户端向服务器发送请求的时候,都会将此SessionId携带过去,服务端会对此SessionId进行校验.

    活动:

    1.某次会话当中通过超链接打开新页面属于同一次会话。

    2.只要当前会话页面没有关闭,重新打开新的浏览器窗口欧访问同一个项目资源时属于同一次会话。

    3.除非本次会话的所有页面都关闭再重新访问某个jsp或者Servlet将会穿件新的会话。

    注意:原有会话还存在,只是这个旧的session仍然存在于客户端,只不过再也没有客户端会携带它然后交于服务端校验。

    销毁:

    销毁的三种方式:

    1.调用了session.invalidate()方法

    2.Session过期(超时)

    3.服务器重启

    Session对象:

    Tomcat默认session超时时间为30分钟。

    设置session超时有2种方式:

    1.session.setMaxInactiveInterval(时间);//单位是秒

    2.在web.xml配置

    <session-config>

    <session-timeout>

    10

    </session-timeout>

    </session-config>//单位是分钟

    相关文章

      网友评论

          本文标题:session

          本文链接:https://www.haomeiwen.com/subject/yeudcxtx.html