<struts>
<package name="default" extends="struts-default" namespace="/">
<interceptors>
<interceptor name="MyAuthorization"
class="com.bdqn.Iterceptior.MyAuthorization">
</interceptor>
</interceptors>
</struts>
这是声明了一个过滤器
指定过滤器所在的类 这个类继承自com.opensymphony.xwork2.interceptor.AbstractInterceptor;
实现了方法
public class MyAuthorization extends AbstractInterceptor {
@Override
public String intercept(ActionInvocation invocation) throws Exception {
// TODO Auto-generated method stub
Map<String,Object> session= invocation.getInvocationContext().getSession();
Object userName = session.get("name");
if(userName==null){
return Action.LOGIN;
}else{
return invocation.invoke();
}
}
}
在一个参数invocation可以调用Context实现用户登陆是否存在
在其他的Action中使用上面声明的过滤器,只在需要的地方使用就行比如
:
<action name="showNews" class="com.bdqn.action.NewsAction" method="showNews">
<result name="success">success.jsp</result>
<interceptor-ref name="MyAuthorization" />
<interceptor-ref name="defaultStack" />
</action>
<package name="default" extends="struts-default" namespace="/">
<interceptors>
<interceptor name="MyAuthorization"
class="com.bdqn.Iterceptior.MyAuthorization">
</interceptor>
</interceptors>
</struts>
这是声明了一个过滤器
指定过滤器所在的类 这个类继承自com.opensymphony.xwork2.interceptor.AbstractInterceptor;
实现了方法
public class MyAuthorization extends AbstractInterceptor {
@Override
public String intercept(ActionInvocation invocation) throws Exception {
// TODO Auto-generated method stub
Map<String,Object> session= invocation.getInvocationContext().getSession();
Object userName = session.get("name");
if(userName==null){
return Action.LOGIN;
}else{
return invocation.invoke();
}
}
}
在一个参数invocation可以调用Context实现用户登陆是否存在
在其他的Action中使用上面声明的过滤器,只在需要的地方使用就行比如
:
<action name="showNews" class="com.bdqn.action.NewsAction" method="showNews">
<result name="success">success.jsp</result>
<interceptor-ref name="MyAuthorization" />
<interceptor-ref name="defaultStack" />
</action>