struts2 的拦截器的应用

 

和webwork得差不多,首先写拦截器配置文件:xwork-losbgm-default.xml

 

<? xml version="1.0" encoding="UTF-8" ?>
<! DOCTYPE xwork PUBLIC "-//OpenSymphony Group//XWork 1.1.1//EN"
    "http://www.opensymphony.com/xwork/xwork-1.1.1.dtd"
>
< xwork >
    
< include  file ="struts-default.xml"   />
    
< package  name ="xwork-losbgm-default"  extends ="struts-default" >
        
< interceptors >
            
< interceptor  name ="employeeAccessInterceptor"
                class
="tool.UserAccessInterceptor" >
            
</ interceptor >
            
< interceptor-stack  name ="losbgmStack" >
                
< interceptor-ref  name ="employeeAccessInterceptor" ></ interceptor-ref >
                
< interceptor-ref  name ="defaultStack"   />
            
</ interceptor-stack >
        
</ interceptors >
        
< default-interceptor-ref  name ="losbgmStack" ></ default-interceptor-ref >
        
< global-results >
            
< result  name ="error" > /error.jsp </ result >
            
< result  name ="index" > /index.jsp </ result >
        
</ global-results >
    
</ package >
</ xwork >

 在写一个拦截器类:UserAccessInterceptor.java

// Source file: F:/java/Oil/src/com/xj/tools/UserAccessInterceptor.java

package  tool;

import  com.opensymphony.xwork2.ActionInvocation;
import  com.opensymphony.xwork2.interceptor.AbstractInterceptor;

public   class  UserAccessInterceptor  extends  AbstractInterceptor  {

    @Override
    
public void destroy() {
        
// TODO Auto-generated method stub
        super.destroy();
    }


    @Override
    
public void init() {
        
// TODO Auto-generated method stub
        super.init();
    }


    @Override
    
public String intercept(ActionInvocation arg0) throws Exception {
        
// TODO Auto-generated method stub
        
        
return "error";
    }



}

再要实现拦截器的配置文件中先倒入文件再继承包就可以了:


<? xml version="1.0" encoding="UTF-8"  ?>
<! DOCTYPE struts PUBLIC
        "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
        "http://struts.apache.org/dtds/struts-2.0.dtd"
>

< struts >
    
< include  file ="struts-default.xml" ></ include >
    
< include  file ="xwork-losbgm-default.xml" ></ include >
    
< package  name ="login"  namespace ="/"  extends ="xwork-losbgm-default" >
        
< action  name ="login"  class ="action.LoginAction" >
            
< result  name ="success" > /index.jsp </ result >
        
</ action >
        
< action  name ="main" >
            
< result > /main.jsp </ result >
        
</ action >
        
< action  name ="Register" >
            
< result > /index.jsp </ result >
        
</ action >
        
< action  name ="*" >
            
< result > /{1}.jsp </ result >
        
</ action >
    
</ package >
</ struts >

 ===================================================================================

struts2中的拦截器如何配置在action前后都执行呢?

 

public  String intercept(ActionInvocation invocation)  {   
  
//do some job before invocation   
  
//...   
  String result = invocation.invoke();   
  
//do some job after invocation   
  
//...   
  return result;   
}
   

==============================================================================

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值