要自定义Struts2拦截器,您需要按照以下步骤进行操作:
1. 创建一个实现 `com.opensymphony.xwork2.interceptor.Interceptor` 接口的类,例如 `CustomInterceptor`。
```java
public class CustomInterceptor implements Interceptor {
@Override
public void destroy() {
// 在拦截器销毁时执行的代码
}
@Override
public void init() {
// 在拦截器初始化时执行的代码
}
@Override
public String intercept(ActionInvocation invocation) throws Exception {
// 在拦截器拦截请求时执行的代码
// 您可以在这里实现自定义的逻辑
// 调用下一个拦截器或者执行Action
String result = invocation.invoke();
// 在拦截器拦截请求完成后执行的代码
return result;
}
}
```
2. 在 `struts.xml` 配置文件中添加拦截器的定义和使用。
```xml
```
在上述配置中,`
这样,在执行名为 `exampleAction` 的Action时,会先执行 `customInterceptor` 拦截器的 `intercept` 方法,然后再执行Action的逻辑。
注意:为了让Struts2能够扫描到您自定义的拦截器类,需要在 `struts.xml` 配置文件中添加相应的包扫描配置。例如:
```xml
```
在上述配置中,`