精华内容
下载资源
问答
  • 三种设置session失效时间

    第一种:

    web.xml中加上,

    <session-config>
      <session-timeout>15</session-timeout>
      </session-config>

    15代码15分钟

    第二种:

    request.getSession().setMaxInactiveInterval(600);

    600是以秒为单位的

    第三种:

    tomcat包下的conf/web.xml 

    <session-config>
            <session-timeout>30</session-timeout>
        </session-config>

    默认为30分钟


    展开全文
  • 很多时候我们都会用到session来暂存一些信息,但是如何控制session超时失效的时间呢,今天就为大家介绍三种方式: ... Tomcat默认session失效时间为30min,可以根据需要修改,负数或0为限制session

    很多时候我们都会用到session来暂存一些信息,但是如何控制session超时失效的时间呢,今天就为大家介绍三种方式:

    第一种:在WEB容器中设置(以Tomcat为例)

    在apache-tomcat-7.0.42\conf\web.xml中设置:

    <pre name="code" class="html">  <session-config>
            <session-timeout>30</session-timeout>
        </session-config>


    
    Tomcat默认session失效时间为30min,可以根据需要修改,负数或0为不限制session失效时间。
    

    第二种:在项目的web.xml中设置

      <session-config>
            <session-timeout>30</session-timeout>
        </session-config>
    
    时间单位为分钟

    第三种:通过JAVA代码设置

    <span style="white-space:pre">	</span>session.setMaxInactiveInterval(30*60);//以秒为单位
    声明三种方式的优先级  第一种 < 第二种 < 第三种

    展开全文
  • java设置session销毁 失效的方法

    千次阅读 2017-10-04 10:24:47
    Session对象是HttpSessionState的一个...在系统登录后,都会设置一个当前session失效的时间,以确保在用户长时间与服务器交互,自动退出登录,销毁session。 具体设置很简单,方法有三种: (1)在主页面或者公共

    Session对象是HttpSessionState的一个实例。该类为当前用户会话提供信息,还提供对可用于存储信息会话范围的缓存的访问,以及控制如何管理会话的方法。下面介绍设置session失效的几种方法。

    在系统登录后,都会设置一个当前session失效的时间,以确保在用户长时间不与服务器交互,自动退出登录,销毁session。
    具体设置很简单,方法有三种:

    (1)在主页面或者公共页面中加入:session.setMaxInactiveInterval(900);参数900单位是秒,即在没有活动15分钟后,session将失效。

    这里要注意这个session设置的时间是根据服务器来计算的,而不是客户端。所以如果是在调试程序,应该是修改服务器端时间来测试,而不是客户端。

    (2)也是比较通用的设置session失效时间的方法,就是在项目的web.xml中设置

    1. <!-- 设置session失效,单位分 --> 
    2. <session-config> 
    3. <session-timeout>1</session-timeout> 
    4. </session-config> 

    (3)直接在应用服务器中设置,如果是tomcat,可以在tomcat目录下conf/web.xml中找到<session-config>元素,tomcat默认设置是30分钟,只要修改这个值就可以了。

    需要注意的是如果上述三个地方如果都设置了,有个优先级的问题,从高到低:(1)>(2)>(3)

    在一般系统中,也可能需要在session失效后做一些操作,

    (1)控制用户数,当session失效后,系统的用户数减少一个等,控制用户数在一定范围内,确保系统的性能。

    (2)控制一个用户多次登录,当session有效时,如果相同用户登录,就提示已经登录了,当session失效后,就可以不用提示,直接登录了。

    那么如何在session失效后,进行一系列的操作呢?

    这里就需要用到监听器了,即当session因为各种原因失效后,监听器就可以监听到,然后执行监听器中定义好的程序就可以了。

    监听器类为:HttpSessionListener类,有sessionCreated和sessionDestroyed两个方法

    自己可以继承这个类,然后分别实现。

    sessionCreated指在session创建时执行的方法

    sessionDestroyed指在session失效时执行的方法

    给一个简单的例子:

    1. public class SessionListener implements HttpSessionListener{   
    2. public void sessionCreated(HttpSessionEvent event) {   
    3. HttpSession ses = event.getSession();   
    4. String id=ses.getId()+ses.getCreationTime();   
    5. SummerConstant.UserMap.put(id, Boolean.TRUE); //添加用户   
    6. }   
    7. public void sessionDestroyed(HttpSessionEvent event) {   
    8. HttpSession ses = event.getSession();   
    9. String id=ses.getId()+ses.getCreationTime();   
    10. synchronized (this) {   
    11. SummerConstant.USERNUM--; //用户数减一   
    12. SummerConstant.UserMap.remove(id); //从用户组中移除掉,用户组为一个map   
    13. }   
    14. }   

    然后只需要把这个监听器在web.xml中声明就可以了

    1. <listener>   
    2. <listener-class>   
    3. com.demo.SessionListener   
    4. </listener-class>   
    5. </listener>  

    三种方法,到这里介绍完了,希望对你有帮助。

    转自:http://developer.51cto.com/art/201106/269493.htm

    展开全文
  • Java设置session失效的时间(使用框架) 在一般系统登录后,都会设置一个当前session失效的时间,以确保在用户长时间与服务器交互,自动退出登录,销毁session 具体设置的方法有三种: 1.在web容器中设置(以...

    Java设置session失效的时间(不使用框架)

    在一般系统登录后,都会设置一个当前session失效的时间,以确保在用户长时间不与服务器交互,自动退出登录,销毁session
    具体设置的方法有三种:
    1.在web容器中设置(以tomcat为例)
    在tomcat-7.0\conf\web.xml中设置,以下是tomcat7.0中默认配置:

    <session-config>
    <session-timeout>30</session-timeout>
    </session-config>

    tomcat默认session超时时间为30分钟,可以根据需要修改,负数或0为不限制session失效时间
    这里要注意这个session设置的时间是根据服务器来计算的,而不是客户端。所以如果在调试程序,应该是修改服务器端时间来测试,而不是客户端

    2.在工程的web.xml中设置

    <session-config>
    <session-timeout>15</session-timeout>
    </session-config>

     这里的15是指15分钟失效

    3.通过java代码设置
    session.setMaxInactiveInterval(30*60);//以秒为单位,即在没有活动30分钟后,session将失效

    三种方式优先等级:1 < 2 < 3
    在一般系统中,也可能需要在session失效后做一些操作:
    1.控制用户数,当session失效后,系统的用户数减少一个,控制用户数量在一定范围内,确保系统的性能
    2.控制一个用户多次登录,当session有效时,如果相同用户登录,就提示已经登录了,当session失效后,就可以不同提示,直接登录
    那么如何在session失效后,进行一系列的操作呢?
    这里就需要用到监听器了,即当session因为各种原因失效后,监听器就可以监听到,然后执行监听器中定义好的程序就可以了
    监听器类为:HttpSessionListener类,有sessionCreated和sessionDestroyed两个方法
    自己可以继承这个类,然后分别实现
    sessionCreated指在session创建时执行的方法
    sessionDestroyed指在session失效时执行的方法
    例子:

    public class OnlineUserListener implements HttpSessionListener{
          public void sessionCreated(HttpSessionEvent event){
                     //session创建时执行操作
          }
    
          public void sessionDestroyed(HttpSessionEvent event){
                //session失效时执行操作
        }
     }

    然后再web.xml中声明

    <listener>
    <listener-class>com.demo.OnlineUserListener</listener-class>
    </listener>

    shiro设置session失效时间

    具体设置的方法有两种:
    1、 配置文件

      <!-- 会话管理器 -->
    <bean id="sessionManager" class="org.apache.shiro.web.session.mgt.DefaultWebSessionManager">
        <!-- 设置超时时间 -->
        <property name="globalSessionTimeout" value="1800000"/>
    </bean>

    2、通过api

    Shiro的Session接口有一个setTimeout()方法,登录后,可以用如下方式取得session

    SecurityUtils.getSubject().getSession().setTimeout(1800000);

    设置的最大时间,正负都可以,为负数时表示永不超时。

    SecurityUtils.getSubject().getSession().setTimeout(-1000l);

    注意:这里设置的时间单位是:ms,但是Shiro会把这个时间转成:s,而且是会舍掉小数部分,这样我设置的是-1ms,转成s后就是0s,马上就过期了。所有要是除以1000以后还是负数,必须设置小于-1000

    展开全文
  • jeecgboot设置session失效时间 JwtUtil文件
  • JAVA 设置Session失效时间

    千次阅读 2018-01-20 18:41:25
    - JAVA设置Seeion失效时间的三种方式 1.java代码控制 //秒为单位 HttpSession session = request.getSession(); session.setMaxInactiveInterval(3600); 2.项目配置文件web.xml控制 ...
  • session 设置失效时间

    千次阅读 2017-11-09 14:31:20
    程序中session都有一个默认的过期时间,其中tomcat中的默认时间为30分钟,根据需要我们可以去手动设置session的过期时间,以下是设置session的过期时间的三个方法: 1.在tomcat-->conf-->conf/web.xm中的中设置: 30...
  • session永不失效

    千次阅读 2012-12-03 11:17:13
    由于网站设置了默认的session失效时间是30分钟,但是当用户在某个页面停留时间超过30面的话,session就失效了,需要重新登录。这对于一般的页面没有问题,但是对于一些编辑页面问题就大了,用户辛辛苦苦编辑的内容已...
  • 设置session失效时间

    千次阅读 2016-06-20 14:35:04
    三种方法设置javaweb 项目中,session失效时间: 1:在主页面或者公共页面中加入:session.setMaxInactiveInterval(900); 参数900时服务器端时间 2:的web.xml中设置 15 这里的15也就是15分钟失效. 3:直接在应用...
  • 设置Session失效时间

    万次阅读 2012-05-04 22:04:58
    一、 web app server中,如websphere里可以设置超时时间为30分钟  二、在web.xml中的session-config配置   session-timeout元素用来指定默认的会话超时时间间隔,以分钟为...如,设置session失效时间为30分钟:
  • 设置session失效的几种方法

    千次阅读 2017-02-07 11:05:00
    在系统登录后,都会设置一个当前session失效的时间,以确保在用户长时间与服务器交互,自动退出登录,销毁session。 具体设置很简单,方法有三种: (1)在主页面或者公共页面中加入:session....
  • springboot2.x如何设置session失效时间

    千次阅读 2020-01-17 17:40:36
    application.properties中填加下面的配置,时间单位是分钟 server.servlet.session.timeout=1m
  • 在application.properties文件中增加以下内容: ...注意:这个操作在eclipse中管用,如果要是打成war包放到tomcat中可能会失效,如果失效则需要更改tomcat中的配置 转载于:https://www.cnblogs.com/zhengO...
  • SpringBoot设置Session失效时间

    千次阅读 2019-04-05 10:20:00
    1 #Session超时时间设置,单位是秒,默认是30分钟 2 server.session.timeout=10 然而并没有什么用,因为SpringBoot在TomcatServletWebServerFactory代码中写了这个 1 private long ...
  • session失效设置方法可以分为两大类四小种:(1) 中间件(以Tomcat为例) 1.1. tomcat/conf/web.xml(推荐) 1.2. tomcat/conf/server.xml (2)webapp(程序本身) 2.1. WEB-INF/web.xml(推荐) 2.2. Java...
  • 关于session失效这个问题看似简单,如果搞不好会非常坑爹的,下面就详细说说设置session失效时间的办法。 一、服务器设置session IIS-网站-属性-Asp.net-编辑配置-状态管理-会话超时(分钟)-设置为...
  • springboot:设置session失效时间

    万次阅读 2019-03-07 17:14:02
    //以秒为单位,即在没有活动120分钟后,session失效 response.sendRedirect("/index.html"); }else { response.sendRedirect("/login.html#fail"); } } catch (Exception e) { e.printStackTrace(); } } ...
  • Session失效设置

    千次阅读 2008-01-15 18:17:00
    在一般系统登录后,都会设置一个当前session失效的时间,以确保在用户没有使用系统一定时间后,自动退出登录,销毁session。   具体设置很简单:  在主页面或者公共页面中加入:session.setMaxInactiveInterval...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 121,809
精华内容 48,723
关键字:

怎么设置session不失效