现在的位置: 首页 > 综合 > 正文

Struts2拦截器的应用

2017年12月19日 ⁄ 综合 ⁄ 共 2516字 ⁄ 字号 评论关闭

 拦截器类

  1. package com.umgsai.txyl.interceptor; 
  2. import com.opensymphony.xwork2.ActionContext; 
  3. import com.opensymphony.xwork2.ActionInvocation; 
  4. import com.opensymphony.xwork2.interceptor.AbstractInterceptor; 
  5. public class AdminInterceptor extends AbstractInterceptor { 
  6.     private static final long serialVersionUID = 1L; 
  7.     //管理员操作相关的拦截器 
  8.     @Override 
  9.     public String intercept(ActionInvocation invocation) throws Exception { 
  10.         String result = null
  11.         ActionContext actionContext = invocation.getInvocationContext(); 
  12.         if((actionContext.getSession().get("admin")==null||"".equals(actionContext.getSession().get("admin")))){ 
  13.             return "admin_login"
  14.         } 
  15.         result = invocation.invoke(); 
  16.         return result; 
  17.     } 
  18.     public static void main(String[] args) { 
  19.         // TODO Auto-generated method stub 
  20.     } 

admin.xml中应用

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

 

【上篇】
【下篇】

抱歉!评论已关闭.