您的位置:首页 > 编程语言 > Java开发

Struts开发一个权限验证拦截器来判断用户是否登录

2015-05-26 23:25 369 查看

开发一个权限验证拦截器来判断用户是否登录

当用户请求受保护资源时,先检查用户是否登录

如果没有登录,则向用户显示登录页面

如果已经登录,则继续操作

实现步骤

开发权限验证拦截器

在配置文件中定义拦截器并引用它

开发权限验证拦截器

public class AuthInterceptor extends AbstractInterceptor {
public String intercept(ActionInvocation invocation)
throws Exception {
//获取用户会话信息
Map session= invocation.getInvocationContext().getSession();
User user = (User)session.get("login");
if (user == null) {
//终止执行,返回登录页面
return Action.LOGIN;
} else {
//继续执行剩余的拦截器和Action
return invocation.invoke();
}
}
}


在配置文件中定义拦截器并引用它

<package name="renthouse" extends="struts-default">
<interceptors>
<!--定义权限验证拦截器-->
<interceptor name="myAuthorization"
class="cn.jbit.houserent.interceptor.AuthInterceptor">
</interceptor>
<!--定义拦截器栈-->
<interceptor-stack name="myStack">
<interceptor-ref name="defaultStack"/>
<interceptor-ref name="myAuthorization"/>
</interceptor-stack>
</interceptors>
<!-- 定义默认拦截器 -->
<default-interceptor-ref name="myStack"/>
…
</package>


注:因为包含在默认拦截器内,所以Action中无需再引用权限拦截器
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐