设为首页 加入收藏

TOP

struts2如何进行权限控制
2014-10-19 03:30:05 来源: 作者: 【 】 浏览:34
Tags:struts2 如何 进行 权限 控制

实现一个简单的拦截器 登陆以后存一个参数ssid(用户ID) 到 session里
拦截器里面的”noid” 你只要在struts.xml中设置一个全局的转发错误的页面或者返回到登陆页面就好了:
如:(



/noid.jsp



)


拦截器代码:
package com.jihe.interceptor;


import java.util.Map;


import com.opensymphony.xwork2.ActionInvocation;
import com.opensymphony.xwork2.interceptor.AbstractInterceptor;


public class MyInterceptor extends AbstractInterceptor {


@Override
public String intercept(ActionInvocation invocation) throws Exception {


Map session = invocation.getInvocationContext().getSession();


if (null != session.get(“ssid”)) {


return invocation.invoke();


} else {


return “noid”;


}
}
}


然后在sturt.xml中配置拦截器(我设置的是全局的,如果你用可能会出现问题,因为你设置这个拦截器以后在登陆时的ssid肯定是null,所以要把不需要拦截器验证的action放到别的package里如:






class=”com.jihe.interceptor.MyInterceptor” />











interceptor-stack跟interceptor-ref的区别是什麽
interceptor-stack是一堆拦截器组成的一个拦截器栈。也可以当拦截器使用。
interceptor-ref是指定某个action使用哪一个拦截器,可以是一个interceptor,也可以是一个interceptor-stack。
将上述拦截器设定为默认拦截器:
<default-interceptor-ref name=”mydefault”/>


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇去哪儿网2014笔试算法题汇总 下一篇Java开发程序员编程面试题

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: