为struts2中自己实现webwork2中的AroundInterceptor拦截器

简介:

package com.yanek.util;


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

import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;

public abstract class AroundInterceptor
  implements Interceptor
{
  protected transient Log log;

  public AroundInterceptor()
  {
    this.log = LogFactory.getLog(super.getClass()); }

  public void destroy() {
  }

  public void init() {
  }

  public String intercept(ActionInvocation invocation) throws Exception {
    String result = null;

    before(invocation);
    result = invocation.invoke();
    after(invocation, result);

    return result;
  }

  protected abstract void after(ActionInvocation paramActionInvocation, String paramString)
    throws Exception;

  protected abstract void before(ActionInvocation paramActionInvocation)
    throws Exception;
}

 

实现它:可以处理action执行前,执行后的拦截处理

 

目录
相关文章
|
传感器 存储 机器学习/深度学习
物联网(IoT)简介:定义、技术与应用
【5月更文挑战第30天】物联网(IoT)是将物品通过嵌入式系统、传感器及通信技术连接至互联网,实现物物、物人交互和数据共享的技术。其关键包括传感器、通信、嵌入式系统、云计算和人工智能技术。物联网应用于智能家居、智慧城市、工业自动化、农业和健康医疗等领域,通过Arduino等平台可实现简单数据传输。随着技术发展,物联网将深远影响人们生活和工作方式。
5688 3
|
消息中间件 NoSQL Java
springboot - 条件注解@ConditionalOnClass原理
springboot - 条件注解@ConditionalOnClass原理
springboot - 条件注解@ConditionalOnClass原理
|
Windows 计算机视觉 Linux
QtCreator 跨平台开发添加动态库教程(以OpenCV库举例)- Windows篇
该文档介绍了Qt的跨平台特性,并推荐在Windows和Linux开发中使用QtCreator。在Windows下添加动态库,可以通过Visual Studio配置.lib文件和.dll文件,或在QtCreator中使用"添加库"功能。在QtCreator中,选择库文件、包含路径,并配置Details,然后更新.pro文件,清除、qmake及构建项目。运行时确保.dll与.exe在同一目录下。
567 0
QtCreator 跨平台开发添加动态库教程(以OpenCV库举例)- Windows篇
|
API Android开发
android setTag (int key, Object tag)使用
android setTag (int key, Object tag)使用
246 1
|
监控 Java
Pinpoint【部署 02】Pinpoint Agent 安装启动及监控 SpringBoot 项目案例分享(添加快速测试math-game.jar包)
Pinpoint【部署 02】Pinpoint Agent 安装启动及监控 SpringBoot 项目案例分享(添加快速测试math-game.jar包)
730 1
|
Java API
解决HTTP 400 Bad Request错误的方法
解决HTTP 400 Bad Request错误的方法
|
关系型数据库 MySQL Java
MySQL - JDBC 连接数据库 MySQL serverTimezone useSSL 时差问题
MySQL - JDBC 连接数据库 MySQL serverTimezone useSSL 时差问题
558 0
|
存储 前端开发 Java
Spring MVC 实战:三种方式获取登录用户信息
前言 Web 项目中,维持用户登录状态的常用方式有三种,分别是 Cookie、Session、Token,不管哪种方案,都需要获取到用户信息供业务层使用。
761 0
Spring MVC 实战:三种方式获取登录用户信息
|
缓存 编解码 前端开发
基于OpenCv+Django的网络实时视频流传输(前后端分离)
基于OpenCv+Django的网络实时视频流传输(前后端分离)
1099 0
|
前端开发 Java 数据库
手把手教你使用Spring Boot从零开始制作用户注册登录功能
手把手教你使用Spring Boot从零开始制作用户注册登录功能
7272 2
手把手教你使用Spring Boot从零开始制作用户注册登录功能