继承方法拦截器的自定义拦截器配置
自定义拦截器类代码如下:
<!--EndFragment-->
package struts.jc.interceptor;
import com.opensymphony.xwork2.ActionInvocation;
import com.opensymphony.xwork2.interceptor.MethodFilterInterceptor;
public class ExampleInterceptor extends MethodFilterInterceptor
{
//重写方法拦截器拦截方法
@Override
protected String doIntercept(ActionInvocation arg0) throws Exception
{
System.out.println("start invoking3.......");
String result=arg0.invoke();
System.out.println("end invoking3.........");
return result;
}
}
LoginAction类代码如下(在原有的基础上添加如下方法!)
<!--EndFragment-->
//继承自定义拦截器拦截
public String method()
{
FORWORD="success";
return FORWORD;
}
Struts.xml配置信息如下:
<?xml version="1.0" encoding="UTF-8" ?>
<!-- 声明DTD文件 -->
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
<!-- Action 所在包定义 name为项目名,扩展默认文件struts-default.xml配置文件-->
<package name="Struts2Test" extends="struts-default">
<!-- 拦截器配置定义 -->
<interceptors>
<interceptor name="example" class="struts.jc.interceptor.ExampleInterceptor"></interceptor>
</interceptors>
<action name="Login" class="struts.action.LoginAction" method="method">
<result name="input">/login.jsp</result>
<result name="success">/index.jsp</result>
<!-- Action拦截器配置定义 -->
<interceptor-ref name="example">
<!-- 被拦截方法配置定义 -->
<param name="includeMethod">method</param>
<param name="excludeMethod">execute</param>
</interceptor-ref>
</action>
</package>
</struts>
每天一点点希望对大家有利!!
<!--EndFragment-->
分享到:
相关推荐
1. **创建拦截器类**:自定义拦截器需要继承Struts2提供的`Interceptor`接口或实现`intercept()`方法。通常,我们会继承`AbstractInterceptor`抽象类,因为它已经为我们提供了默认的`intercept()`实现。 ```java ...
Struts2自定义拦截器的配置是Struts2框架中一个非常重要的功能,它允许开发者在Action执行前后插入自定义的逻辑,以实现如权限验证、日志记录、性能监控等多种需求。以下是对标题和描述中涉及的知识点的详细说明: ...
5. **自定义逻辑**:在自定义拦截器的`handleMessage`或`handleFault`方法中,你可以添加任何你需要的业务逻辑,例如验证请求头、修改消息内容或记录操作日志。 6. **调试和测试拦截器**:为了确保拦截器按预期工作...
继承这个类可以方便地创建自定义拦截器,因为该类已经实现了`Interceptor`接口,并提供了一些基本的方法和属性。这些方法包括: 1. `intercept(ActionInvocation invocation)`: 这是拦截器的主要方法,它被Struts2...
在IT行业中,Web服务是应用程序之间进行通信的一种标准方法,而WebService之自定义拦截器的实现,无论是对于服务器端还是客户端,都是为了增强服务的功能性和安全性。本文将深入探讨自定义拦截器的概念、作用以及...
本文将深入探讨自定义拦截器的基本应用及设置方法。 首先,理解拦截器的工作原理至关重要。拦截器是在Action执行前后插入的一段代码,形成一个拦截链。当请求到达时,会按照拦截器的注册顺序逐个调用它们的`...
-- 配置自定义拦截器 --> <!-- 拦截所有以 .do 结尾的请求 --> *.do" /> <!-- 加载自定义拦截器类 --> <bean class="common.interceptor.MyInterceptor"></bean> ``` #### 2.2 拦截器执行顺序 如果有多个...
自定义拦截器可以极大增强Struts2的功能,通过巧妙地组合和配置,可以实现灵活、高效的应用架构。学习并熟练掌握自定义拦截器的使用,对于提升Java Web开发能力是非常有帮助的。这篇博客文章可能详细讲解了以上步骤...
这些文件展示了如何编写和配置自定义拦截器的具体实现。 通过这个简单的自定义拦截器例子,我们可以看到Struts2拦截器的灵活性和实用性。它们使得业务逻辑和框架的控制层分离,降低了代码的耦合度,提高了代码的可...
1. **创建拦截器实现**:你需要实现`Interceptor`接口或继承`AbstractInterceptor`类来创建自定义拦截器。`Interceptor`接口提供了三个方法:`init()`(初始化)、`intercept()`(拦截处理)和`destroy()`(销毁)。...
自定义拦截器需要实现`com.opensymphony.xwork2.interceptor.Interceptor`接口,然后在配置文件中声明并配置拦截器。例如,你可能想要创建一个日志拦截器,记录每个Action执行前后的信息。 6. **拦截器栈**: - ...
使用axios创建实例时,默认仅通过实例定义的拦截器。有写场景下,需要继承折则axios缺省浏览器,本代码正是为解决此问题而生。
这通过创建自定义拦截器和自定义注解来实现。 #### 项目结构 - `TokenInterceptor.java`: 自定义拦截器类,用于执行拦截逻辑。 - `InterceptorConfig.java`: 配置类,用于将自定义拦截器注册到Spring容器中。 - `...
自定义拦截器需要实现`Interceptor`接口或者继承自`AbstractInterceptor`类。 - **步骤1:** 定义一个实现了`Interceptor`接口或继承自`AbstractInterceptor`的类。 - **步骤2:** 在`struts.xml`中注册自定义的...
创建局部自定义拦截器的步骤与全局相同,只是在`<action>`标签内配置拦截器。 ### 源码分析 了解了自定义拦截器的基本原理后,我们可以深入到源码中去探究其工作方式。Struts2的核心类`...
创建自定义拦截器的第一步是定义一个类,该类需要实现`Interceptor`接口或者继承`AbstractInterceptor`抽象类。在这个例子中,我们可能会创建一个名为`CustomInterceptor`的类,并覆盖`intercept()`方法。这个方法会...
创建自定义拦截器需要继承`com.opensymphony.xwork2.interceptor.Interceptor`接口或者实现`Interceptor`接口中的三个方法:`void init()`、`String intercept(ActionInvocation invocation) throws Exception`和`...
我们可以自定义拦截器类,通常会继承`AbstractInterceptor`抽象类以简化实现。例如,我们可以创建一个名为`CustomInterceptor`的拦截器类,实现`intercept`方法,该方法在Action执行前后被调用。 ```java public ...
首先,要创建一个自定义拦截器,我们需要定义一个新的Java类并实现`Interceptor`接口或继承`AbstractInterceptor`类。这个类需要覆盖`intercept`方法,该方法会在Action执行前后被调用。在`intercept`方法中,我们...