首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

struts 二中当SESSION过期后返回登陆页面

2012-08-22 
struts 2中当SESSION过期后返回登陆页面在struts2+spring+hibernate 的体系中,经常要遇到的一个问题就是当

struts 2中当SESSION过期后返回登陆页面

在struts2+spring+hibernate 的体系中,经常要遇到的一个问题就是当用户登陆后,SESSION超过指定的时间后,
当用户再点某个连接时,系统会自动返回到登陆的页面。在实现时候,由于是STRUTS2,因此可以充分利用拦截器。
拦截器示例代码如下

? ActionContext ctx = ActionContext.getContext();
??????? Map session = ctx.getSession();
?????????Action action = (Action)actionInvocation.getAction();
??????? if (action instanceof LoginSystem) {???
????????? return actionInvocation.invoke();???
????????? }???
??????? String userName = (String)session.get(USER_NAME);
?????????? if(userName == null)?
{
????????return LOGIN;
??????? } else {
??????? ?return actionInvocation.invoke();
??????? }
?? 要注意的,由于要排除登陆这个ACTION,所以要用??? if (action instanceof LoginSystem) {??这句去判断,
因为登陆前会执行这个拦截器,这时SESSION肯定为空,就不能再跑去显示“SESSSION超时”这个页面了

热点排行