<package name="AInterceptor" extends="struts-default" namespace="/">
<!-- 注册拦截器 (既保留struts2的拦截器,又使用自定义拦截器) -->
<interceptors>
<interceptor name="loginInterceptor" class="com.cb.Interceptor.loginInterceptor" />
<interceptor-stack name="loginInterceptorStack">
<interceptor-ref name="defaultStack" /><!-- struts2默认拦截器 -->
<interceptor-ref name="loginInterceptor" /><!-- 自定义拦截器 -->
</interceptor-stack>
</interceptors>
<!-- 全局视图 -->
<global-results>
<result name="success">/WEB-INF/page/SuccessMessage.jsp</result>
</global-results>
<action name="TestInterceptor_*" class="com.cb.Interceptor.TestInterceptor" method="{1}">
<result name="kk">/WEB-INF/page/loginSuccess.jsp</result>
</action>
<action name="login">
<result>/WEB-INF/page/Login.jsp</result>
</action>
<action name="Testlogin">
<!--为此action添加拦截器 -->
<interceptor-ref name="loginInterceptorStack" />
<result name="ok">/WEB-INF/page/Input.jsp</result>
</action>
</package>
public class loginInterceptor implements Interceptor {
/**
*
*/
private static final long serialVersionUID = 1L;
@Override
public void destroy() {
// TODO Auto-generated method stub
}
@Override
public void init() {
// TODO Auto-generated method stub
}
@Override
public String intercept(ActionInvocation invocation) throws Exception {
Object user = ActionContext.getContext().getSession().get("User");
if (user != null) {
return invocation.invoke(); // 如果user不为null,代表用户已经登录,允许执行action中的方法
}
ActionContext.getContext().put("Msg", "你没有权限执行该操作");
return "success";
}
}