由于session值之前没有设置,以至于刚登录的网站,不到一分钟就超时了,总结了一下,原来是session过期的原因,以下是设置session时间的3个方法:
1.在Tomcat中,如果要配置session的失效时间,只要配置web.xml就可以,在web.xml中加入下面一句:
通过设置session-config标签下session-timeout标签即可,单位为分。
<session-config>
<session-timeout>30</session-timeout>
</session-config>
表示设置失效时间为30分钟。
如果设置为负数或者0,则表示不失效,但是这样的坏处是内存没有释放掉。
要做到页面无动作也能不限时的保存session,并且页面关闭的时候能在内存中释放掉session所占内存,则可以在页面用一个隔一段时间就自动刷新的页面来实现。
2.在tomcat——>conf——>servler.xml文件中定义:
<Context path="/test" docBase="/test"
defaultSessionTimeOut="3600" isWARExpanded="true"
isWARValidated="false" isInvokerEnabled="true"
isWorkDirPersistent="false"/>
defaultSessionTimeOut="3600"
3. 在程序中定义:
HttpSession session= request.getSession();
session.setMaxInactiveInterval(30*60);
设置单位为秒,设置为-1永不过期
分享到:
相关推荐
设定tomcat中session过期时间的三种方式
包含对于Memcached-Session-Manager配置的五种Tomcat集群session共享机制和策略 jar包及文档
因tomcat7使用redis共享session,其他的包存在问题,自己编译后处理通过。 该包是在https://github.com/jcoleman/tomcat-redis-session-manager 将源码编译后的包。
nignx 进行负载后session失效的完美解决,亲测可用
asm-3.2.jar,kryo-1.04.jar,kryo-serializers-...memcached-session-manager-1.7.0.jar,memcached-session-manager-tc7-1.7.0.jar,msm-kryo-serializer-1.7.0.jar,reflectasm-1.01.jar,spymemcached-2.7.3.jar
tomca8/conf/context.xml 添加如下配置: <Valve className="com.orangefunction.tomcat.redissessions.RedisSessionHandlerValve" /> ...maxInactiveInterval="60" /> ---session的失效时间
已经配置好,只需要自己更改redis的ip地址就可以使用,请测可以使用。
NULL 博文链接:https://sch.iteye.com/blog/1278470
Session共享 tomcat7+redis的session共享实现,无需重新打包,直接放入tomcat lib中就可以使用,记得修改tomcat的content.xml
最近由于一个项目,模块切换为ajax请求数据,当Session失效后,ajax请求后没有返回值,只有响应的html:<html>[removed]window.open(‘http://192.168.0.118:8080/welcomeAction/loginUI.do’,’_top’);...
tomcat7+redis完成session共享jar及配置
tomcat中配置redis失效时间,修改了原来读取web.xml值 改为从context.xml中读取保存时间
我的运行环境是:JDK1.6+TOMCAT6.0.45,MSM加Tomcat有一个特别大的坑是如果Tomcat版本是6.0.45或者7.0.68,应用了MSM后会出现session快速失效的问题,经调试跟踪,发现原来是tomcat的session失效时间传入MSM的时候时间...
经了解,他对同一个项目使用tomcat部署了两个环境,一个在开发服务器上,一个在他本机,两个环境代码配置完全相同。两边通过同一个nginx进行反向代理,nginx配置大致如下, location /health/ { proxy_pass ...
session的过期时间需要配置在tomcat 中的 web.xml 中,时间以分钟计算。另最大时间好像是24小时,就是说,你的session过期时间可以设置成1440,如果设置成1441是无效的。(还没有测试) 代码如下: <session> <session>...
Nginx+Tomcat+Redis实现session共享,通过Nginx作为前端的负载,把请求分发到后端的Tomcat服务器上,提高并发数;但是单纯的通过Nginx的ip_hash负载是很多...只要用户一切换网络或者后端Tomcat主机宕机session就失效;
nginx反向代理tomcat集群,请求轮训给集群的tomcat,session存储在redis里面,集群的tomcat都从redis里面获取用户的session,session失效,redis自动删除,释放内存。记录于2015-11-26 完美支持tomcat8
本文目的-解决负载均衡session失效问题。 附带使用说明。
用于 Apache Tomcat 的 ... 管理器依赖Redis原生的过期能力,让key自动过期,避免了不断在整个会话列表中搜索过期会话的开销。 存储在会话中的数据必须是可序列化的。 Tomcat 版本 此项目同时支持 Tomcat 6 和 Tomc
redis-session-tomcat-filter ...如果配置了redis_cluster.host,则redis.pool.host的配置自动失效 对jedis做了简单修改,需要把pom文件中关于jedis的依赖注释调 直接引用lib中的jedis-3.0.0-SNAPSHOT.jar