Struts2自定义拦截器写法
public class LoginInterceptor implements Interceptor{
@Override
public String intercept(ActionInvocation arg0) throws Exception {
Manager manger = (Manager) ActionContext.getContext().getSession().get("managerInfo");
if(manger!=null){
return arg0.invoke();
}else{
return "login";
}
}
@Override
public void destroy() {
}
@Override
public void init() {
}
}
<package name="permission" abstract="true" extends="struts-default">
<!-- 定义一个拦截器 -->
<interceptors>
<interceptor name="authority"
class="com.geminno.homedesign.filter.LoginInterceptor">
</interceptor>
<!-- 拦截器栈 -->
<interceptor-stack name="mydefault">
<interceptor-ref name="defaultStack" />
<interceptor-ref name="authority" />
</interceptor-stack>
</interceptors>
<!-- 定义全局Result -->
<global-results>
<!-- 当返回login视图名时,转入/login.jsp页面 -->
<result name="login">/admin/login/login.jsp</result>
</global-results>
</package>
<package name="adminAddress" namespace="/adminAddress" extends="permission">
<action name="address_*" class="addressAction" method="{1}">
<interceptor-ref name="params" />
<interceptor-ref name="authority" />
<result name="showAddressByPage">/admin/address/address.jsp</result>
</action>
在其他的配置文件中如何引用自定义的拦截器
</package>
<package name="adminAddress" namespace="/adminAddress" extends="permission">
<action name="address_*" class="addressAction" method="{1}">
<interceptor-ref name="params" />
<interceptor-ref name="authority" />
<result name="showAddressByPage">/admin/address/address.jsp</result>
</action>
</package>
浙公网安备 33010602011771号