为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执行前,执行后的拦截处理

 

时间: 2025-01-02 23:48:56

为struts2中自己实现webwork2中的AroundInterceptor拦截器的相关文章

在Java的Struts中判断是否调用AJAX及用拦截器对其优化_java

Strut2判断是否是AJAX调用 1.   AJAX与传统Form表单实际上,两者一般都是通过HTTP的POST请求.区别是浏览器提交Form表单后,期望服务器返回一个完整的HTML页面.而AJAX调用是由XMLHttpRequest对象(不同浏览器可能不一样)发出,浏览器期望服务器返回HTML片段即可,具体是JSON.XML等都没有要求.返回到浏览器后如何使用,也是由JS脚本自己决定的.  2. 请求是不是AJAX那么对于服务器端,如何判断一个HTTP请求是不是AJAX调用?这需要看HTTP

Struts2框架学习之六:理解并使用拦截器

前言 拦截器是Struts2框架的核心功能,理解并使用拦截器有助于更灵活使用Struts2.拦截器与Servlet中的过滤器有些类似却又不尽相同.因为在Struts2中拦截器更像一个可插拔的组件,围绕Action和Result进行,可以在方法调用之前.之后使用.通过Struts2的工作流程(后面还会看到一个请求在Struts2中详细的执行流程)可以发现调用一个Action之前之后有许多的拦截器,这些拦截器都通过后才执行具体的action.对于每一个拦截器来说,可以直接返回,从而终止余下的拦截器.

JavaWeb中Struts2拦截器深入分析(一)_java

一.struts2中的拦截器(框架功能核心) 1.过滤器VS拦截器 过滤器VS拦截器功能是一回事.过滤器是Servlet规范中的技术,可以对请求和响应进行过滤. 拦截器是Struts2框架中的技术,实现AOP(面向切面)的编程思想,是可插拔的, 可以对访问某个 Action 方法之前或之后实施拦截. 拦截器栈(Interceptor Stack): 将拦截器按一定的顺序联结成一条链. 在访问被拦截的方法时, Struts2拦截器链中的拦截器就会按其之前定义的顺序被依次调用 Struts2执行原理

Java的Struts2框架中拦截器使用的实例教程_java

1.拦截器小介 拦截器的功能类似于web.xml文件中的Filter,能对用户的请求进行拦截,通过拦截用户的请求来实现对页面的控制.拦截器是在Struts-core-2.2.3.jar中进行配置的,原始的拦截器是在struts-default.xml中配置的,里面封存了拦截器的基本使用方法. Struts2拦截器功能类似于Servlet过滤器.在Action执行execute方法前,Struts2会首先执行struts.xml中引用的拦截器,如果有多个拦截器则会按照上下顺序依次执行,在执行完所有

[转载]难经3:Struts2,拦截器拦不住Result?

[问题] 使用Struts2作为web框架,知道它的拦截器(Interceptor)机制,类似与Filter和spring的AOP,于是实现了一个为Action增加自定义前置(before)动作和后置动作(after)的拦截器(曰:WInterceptor),不过用一段时间发现,在WInterceptor的after中,对Action对象的属性修改在页面看不到,对请求对象的属性设置也无效.为什么在调用了Action之后(invokeAction())之后,request就不能使用了呢,拦截器不能

【Struts2框架】第六节拦截器-拦截器介绍和总结

一.拦截器概念 Strrurs拦截器是可插拔式的拦截器:如果我们要使用某个拦截器,只需要在配置文件中应用该拦截器即可. Struts拦截器由struts-default.xml,struts.xml等配置文件中进行管理. Struts2中已经默认启动了大量通用功能的拦截器(这些拦截器以name-class对的形式配置在struts-default.xml文件中),只要我们配置Action的package继承了struts-default包,这些拦截器就会起作用. 拦截器几乎完成了Sturts2框

Struts2拦截器

简单了解拦截器   拦截器,在AOP中用于在某个方法或字段被访问之前,进行拦截然后在之前或之后加入某些操作.拦截是AOP的一种实现策略. 拦截器是动态拦截Action调用的对象.它提供了一种机制可以使开发者可以定义在一个action执行的前后执行的代码,也可以在一个action执行前阻止其执行.同时也是提供了一种可以提取action中可重用的部分的方式. 拦截器链,也被称为拦截器栈.拦截器链就是将拦截器按一定的顺序联结成一条链.在访问被拦截的方法或字段时,拦截器链中的拦截器就会按其之前定义的顺序

struts2中,如何关闭某个拦截器

问题描述 struts2中,如何关闭某个拦截器,我想用自己的文件上传方案,但是老是被struts2拦截,结果我得到的文件list=0,结果发现struts-default中有个默认的fileUpload,拦截器,怎么禁用它.<?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Con

struts2.0-用struts2怎么把数据库中的数据保存到集合中并且在jsp中显示呢

问题描述 用struts2怎么把数据库中的数据保存到集合中并且在jsp中显示呢 就是点击查询跳转到另一个界面并把员工表中的所有数据显示出来,这个集合我不会,也不知道 怎么用session传, 解决方案 参考:http://blog.csdn.net/zhiying201039/article/details/6526213 解决方案二: http://www.cnblogs.com/shenliang123/archive/2011/10/30/2229152.html 先放入到 session