用Session判断用户的登录是否失效 用户登录后产生一个userSession,这个Session的保存时间为15分钟,怎么实现15分钟后,提示用户登录已经失效,提示重新登录?有代码给点参考! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 具体设置很简单,方法有三种: (1)在主页面或者公共页面中加入:java 代码 1.HttpSession ses = request.getSession(); 2.ses.setMaxInactiveInterval(10); session.setMaxInactiveInterval(900); 参数900单位是秒,即在没有活动15分钟后,session将失效。 这里要注意这个session设置的时间是根据服务器来计算的,而不是客户端。所以如果是在调试程序,应该是修改服务器端时间来测试,而不是客户端。 (2)也是比较通用的设置session失效时间的方法,就是在项目的web.xml中设置 <session-config> <session-timeout>15</session-timeout> </session-config> 这里的15也就是15分钟失效. (3)直接在应用服务器中设置,如果是tomcat,可以在tomcat目录下conf/web.xml中 找到<session-config>元素,tomcat默认设置是30分钟,只要修改这个值就可以了。 在server.xml中定义context中 如下定义: xml 代码 <Context path="/livsorder" docBase="/home/httpd/html/livsorder" defaultSessionTimeOut="3600" isWARExpanded="true" isWARValidated="false" isInvokerEnabled="true" isWorkDirPersistent="false"/> 需要注意的是如果上述三个地方如果都设置了,有个优先级的问题,从高到低: (3)(2)---(1)-- 这里你可以给session写一个判断语句,如果超时的话,进行提示 主要的内容说的都是怎么让15分钟以后session自动失效,但是没有具体的说出来怎么让他自动提示,我觉得这个东西可以直接用javascript做,就是让javascript去计时,然后到15分钟的时候,session销毁,并且伴随一个弹出框提示 我知道怎么让Session失效也就是1楼的第二种和第三种,但是不知道怎么根据Session失效后,给出提示要用户重新登录! 实现HttpSessionListner 监听Session的状态Invalid的时候,alert对话框提示之后,SendRedirect到主页去 会话监听,session失效的时候,重定向到登陆页面欢迎加入java爱好者群:46918907欢迎加入java爱好者群:46918907 现在你是初学者的话放到事件里面好繁琐,可以做最简单的实现:<% if(session.getAttribute("username")!=null){%> <!--这里是不为空的一些输出--><% } else {%> <script language="javascript"> alert("您还没有登录,请先登录"); top.location='login.jsp'; </script><% }%> java前台开发 JSP或者.java里面写过多的注释会影响速度吗? 如何在Tomcat服务器下面,点击一个rar文件的链接,能够下载而不是显示乱码呢? 怎么样才能在internet上发布一个网站? javascript 关于Hibernate连接数据库问题 asp中的Request.querystring 在jsp中什么是和他等价的 我要频繁的执行三个insert into操作,现在有点慢,请问应该如何优化? 关于中文显示的问题,与java,jsp,mysql都有关 求助,tomcat无法启动 关于js事件不起作用的问题 jsp问题 坐着等你们哦
(1)在主页面或者公共页面中加入:
java 代码
1.HttpSession ses = request.getSession();
2.ses.setMaxInactiveInterval(10);
session.setMaxInactiveInterval(900);
参数900单位是秒,即在没有活动15分钟后,session将失效。
这里要注意这个session设置的时间是根据服务器来计算的,而不是客户端。所以如果是在调试程序,应该是修改服务器端时间来测试,而不是客户端。
(2)也是比较通用的设置session失效时间的方法,就是在项目的web.xml中设置
<session-config>
<session-timeout>15</session-timeout>
</session-config>
这里的15也就是15分钟失效.
(3)直接在应用服务器中设置,如果是tomcat,可以在tomcat目录下conf/web.xml中
找到<session-config>元素,tomcat默认设置是30分钟,只要修改这个值就可以了。
在server.xml中定义context中 如下定义: xml 代码
<Context path="/livsorder" docBase="/home/httpd/html/livsorder"
defaultSessionTimeOut="3600" isWARExpanded="true"
isWARValidated="false" isInvokerEnabled="true"
isWorkDirPersistent="false"/>
需要注意的是如果上述三个地方如果都设置了,有个优先级的问题,从高到低:
(3)(2)---(1)--
Invalid的时候,alert对话框提示之后,SendRedirect到主页去
欢迎加入java爱好者群:46918907欢迎加入java爱好者群:46918907
if(session.getAttribute("username")!=null){
%>
<!--这里是不为空的一些输出-->
<%
}
else
{
%>
<script language="javascript"> alert("您还没有登录,请先登录"); top.location='login.jsp'; </script>
<%
}
%>