Struts2拦截器的应用

拦截器类

 
  1. packagecom.umgsai.txyl.interceptor;
  2. importcom.opensymphony.xwork2.ActionContext;
  3. importcom.opensymphony.xwork2.ActionInvocation;
  4. importcom.opensymphony.xwork2.interceptor.AbstractInterceptor;
  5. publicclassAdminInterceptorextendsAbstractInterceptor{
  6. privatestaticfinallongserialVersionUID=1L;
  7. //管理员操作相关的拦截器
  8. @Override
  9. publicStringintercept(ActionInvocationinvocation)throwsException{
  10. Stringresult=null;
  11. ActionContextactionContext=invocation.getInvocationContext();
  12. if((actionContext.getSession().get("admin")==null||"".equals(actionContext.getSession().get("admin")))){
  13. return"admin_login";
  14. }
  15. result=invocation.invoke();
  16. returnresult;
  17. }
  18. publicstaticvoidmain(String[]args){
  19. //TODOAuto-generatedmethodstub
  20. }
  21. }

admin.xml中应用

 
  1. <?xmlversion="1.0"encoding="UTF-8"?>
  2. <!DOCTYPEstrutsPUBLIC"-//ApacheSoftwareFoundation//DTDStrutsConfiguration2.0//EN""http://struts.apache.org/dtds/struts-2.0.dtd">
  3. <struts>
  4. <packagename="admin"extends="struts-default">
  5. <interceptors>
  6. <interceptorname="AdminInterceptor"class="com.umgsai.txyl.interceptor.AdminInterceptor"/>
  7. <!--定义拦截器栈-->
  8. <interceptor-stackname="myStack"><!--引用自定义拦截器进行身份验证-->
  9. <interceptor-refname="defaultStack"/>
  10. <interceptor-refname="AdminInterceptor"/>
  11. </interceptor-stack>
  12. </interceptors>
  13. <default-interceptor-refname="myStack"/><!--拦截器引用-->
  14. <global-results><!--全局结果转发-->
  15. <resultname="admin_login">/admin/login.jsp</result><!--管理员身份验证失败-->
  16. </global-results>
  17. <actionname="image_upload"class="com.umgsai.txyl.action.UploadAction"method="site_modify">
  18. <paramname="allowTypes">image/bmp,image/png,image/gif,image/jpeg,image/pjpeg</param>
  19. <paramname="savePath">/images</param>
  20. <resultname="error">site_modify.jsp?site_id=${site_id}</result>
  21. <resultname="success">site_modify.jsp?site_id=${site_id}</result>
  22. </action>
  23. <actionname="admin_login"class="com.umgsai.txyl.action.AdminAction"
  24. method="execute">
  25. <interceptor-refname="defaultStack"/>
  26. <resultname="admin_login_success">index.jsp</result><!--//用户登录-->
  27. <resultname="admin_login_failed">login.jsp</result>
  28. </action>
  29. </package>
  30. </struts>

你可能感兴趣的:(struts2拦截器)