struts2中设置session及其有效期时间

1. 设置session  

ServletActionContext.getRequest().getSession().setAttribute("user", u);     

ServletActionContext.getRequest()得到Request请求,然后getSession()得到Session,最后使用setAttribute("user", u)往session      中放入名为user的变量,u是user的值      ActionContext.getContext().getSession().put(key,value); 也可以实现

2. action中设置session有效期的三种方法     

方法一:        

在使用了struts2框架的任何地方使用        ServletActionContext.getRequest().getSession().setMaxInactiveInterval(xxx);    

方法二:       

 在Action中定义一个HttpServletRequest的成员对象req;        Action类实现ServletRequestAware接口,实现其中的方法;        在实现的方法中编写: req=方法参数;      然后在该Action中任何需要用到Session的地方使用req.getSession()......    

方法三:          

在工程的 web.xml中 设置session的有效期30session-timeout元素用来指定默认的会话超时时间间隔,以分钟为单位。该元素值必须为整数。如果session-timeout元素的值为零或负数,则表示会话将永远不会超时。 session-timeout的取值范围是1-1440。

setMaxInactiveInterval和session-config的比较: 

1)、setMaxInactiveInterval的优先级高,如果setMaxInactiveInterval没有设置,则默认是session-config中设置的时间。

2)、setMaxInactiveInterval设置的是当前会话的失效时间,不是整个web服务的。 

3)、setMaxInactiveInterval的参数是秒,session-config当中配置的session-timeout是分钟。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,523评论 19 139
  • 一. Java基础部分.................................................
    wy_sure阅读 9,262评论 0 11
  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 31,958评论 18 399
  • JSP(Java Server Pages),其根本是一个简化的 Servlet 设计,实现了在 Java 当中使...
    静候那一米阳光阅读 3,865评论 0 1
  • 如何激发员工的积极性,一直是很多校长很头疼的问题。有校长甚至提问,我每天都忙疯了,老师却和没事人一样,有没有什么激...
    绘客ART阅读 3,911评论 1 15