java 会话时长_Java中会话session的过期时间配置(容器session有效期),以及session三种超时设置的优先级说明[Java web]...

·

Java中会话session的过期时间配置(容器session有效期),

以及session三种超时设置的优先级说明[Java web]

[Java web] 项目开发中,默认的Session存活时间是30分钟

30

一、Java web开发中,三种会话Session过期时间(Session)设置位置和方法

以下以Tomcat8.5.27为例(其他版本可以参考替换); 为了方便,我们作以下简写。

简写: Tomcat的安装目录简写为{Tomcat_home};

工程目录简写为{MyProject};

A.   在web容器中设置(此处以tomcat为例)

在{Tomcat_home}\conf\web.xml中设置, {Tomcat_home}是bin、conf等目录所在的路径,例如 E:\Apache-TomCat\TomCat8.5.27\

以下是tomcat 8中的默认配置:

90

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

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

在{Tomcat_home}\WebApps\{MyProject}\WEB-INF\web.xml中设置, WebApps目录 是docs、examples、、manager、ROOT等目录所在的路径,

例如 E:\Apache-TomCat\TomCat8.5.27\WebApps\[工程名称]\\WEB-INF\web.xml

180

工程和Web容器一样,默认的session超时时间也是30分钟;可以根据需要修改,负数或0为不限制session失效时间。

C.  通过java代码设置

在Java代码中使用java函数

session.setMaxInactiveInterval(100*60);  //以秒为单位

上方设置的有效期是 100分钟 (100* 60s)

特别注意:这里的单位是秒(s) ; 如果设置的值为零或负数,则表示会话将永不超时!

二、这三种设置session有效期方法的优先级

此处优先级按上面的三种方法(A、B、C)来展示,

如果A、B、C三种方法同时使用时的优先级如下:

三种设置session有效期方式的优先级:  A < B  < C

也就是说,如果同一个工程项目中,如果同时采用了上面的三种方式,则生效的是C :会话超时时间为100分钟 (Java代码中的部分优先生效)

另外,一般情况下,很少有人会直接在Java代码中设置session的过期时间,所以,只需要工程项目的 \WebApps\{MyProject}\WEB-INF\web.xml中设置即可。

(可以直接在War包中做好控制)

···

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值