使得httpsession失效的三种方式是
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使得httpsession失效的三种方式是相关的知识,希望对你有一定的参考价值。
使得httpsession失效的三种方式是
Session一般在服务器上设置了一个30分钟的过期时间,当客户停止活动后自动失效。Session 中保存和检索的信息不能是基本数据类型如 int, double等,而必须是java的相应的对象,如Integer, Double. Httpsession具有如下API: getId 此方法返回唯一的标识,这些标识为每个session而产生。当只有一个单一的值与一个session联合时,或当日志信息与先前的sessions有关时,它被当作键名用。 GetCreationTime 返回session被创建的时间。最小单位为千分之一秒。为得到一个对打印输出很有用的值,可将此值传给Date constructor 或者GregorianCalendar的方法setTimeInMillis. GetLastAccessedTime 返回session最后被客户发送的时间。最小单位为千分之一秒。 GetMaxInactiveInterval 返回总时间(秒),负值表示session永远不会超时。 getAttribute 取一个session相联系的信息。(在jsp1.0中为 getValue) Integer item = (Integer) session.getAttrobute("item") //检索出session的值并转化为整型 setAttribute 提供一个关键词和一个值。会替换掉任何以前的值。(在jsp1.0中为putValue) session.setAttribute("ItemValue", itemName); // ItemValue 必须不是must简单类型 参考技术A 额,你的username没有定义类型啊,这样:Stringusername=(String)session.getAttribute("username");然后,这个session是JSP页面的内部对象,不需要再定义。最后,你的response.SendRedirect(url)错了,注意是这样写的response.sendRedirect("/registerLogin/login.html");//******************修改后为***************************LoingokPageWelcomeYoutohereJava设置session超时(失效)的三种方式
1. 在web容器中设置(此处以tomcat为例)
在tomcat-5.0.28\conf\web.xml中设置,以下是tomcat 5.0中的默认配置:
- <!-- ==================== Default Session Configuration ================= -->
- <!-- You can set the default session timeout (in minutes) for all newly -->
- <!-- created sessions by modifying the value below. -->
- <session-config>
- <session-timeout>30</session-timeout>
- </session-config>
Tomcat默认session超时时间为30分钟,可以根据需要修改,负数或0为不限制session失效时间。
2. 在工程的web.xml中设置
- <!-- 时间单位为分钟 -->
<session-config>
<session-timeout>15</session-timeout>
</session-config>
3. 通过Java代码设置
session.setMaxInactiveInterval(30*60);//以秒为单位
三种方式优先级:1 < 2 <3
以上是关于使得httpsession失效的三种方式是的主要内容,如果未能解决你的问题,请参考以下文章