`
xxp3369
  • 浏览: 151290 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

\struts2\src\com\interceptor

阅读更多
package com.interceptor;

public class Interceptor
{
	public void before()
	{
		System.out.println("before");
	}
	
	public void after()
	{
		System.out.println("after");
	}
}



package com.interceptor;

public class Target implements TargetInterface
{
	public void doSomething()
	{
		System.out.println("do something");
	}
}



package com.interceptor;

import java.lang.reflect.InvocationHandler;
import java.lang.reflect.Method;

public class MyHandler implements InvocationHandler
{
	private Object object;

	private Interceptor interceptor = new Interceptor();

	public void setObject(Object object)
	{
		this.object = object;
	}

	public Object invoke(Object proxy, Method method, Object[] args)
			throws Throwable
	{
		Object result = null;

		interceptor.before();

		result = method.invoke(object, args);

		interceptor.after();

		return result;

	}

}




package com.interceptor;

import java.lang.reflect.Proxy;

public class MyProxy
{
	public Object getProxy(Object object)
	{
		MyHandler myHandler = new MyHandler();

		myHandler.setObject(object);

		return Proxy.newProxyInstance(Target.class.getClassLoader(), object
				.getClass().getInterfaces(), myHandler);
	}
}



package com.interceptor;

public class Client
{
	public static void main(String[] args)
	{
		TargetInterface target = new Target();
		
		MyProxy myProxy = new MyProxy();
		
		TargetInterface proxy = (TargetInterface)myProxy.getProxy(target);
		
		proxy.doSomething();
	}

}
分享到:
评论

相关推荐

    Struts2 src 源码下载

    这个压缩包包含的"src_java_xwork"和"src_java_struts2"是Struts2的核心源码,分别对应XWork框架和Struts2框架的主要部分。 XWork是Struts2的基础,它提供了一套行动调度、类型转换、拦截器等基础服务。在"src_java...

    struts2-src

    标题"struts2-src"表明我们讨论的是Struts2框架的源代码,而描述提到的"struts2.0的源码,这个源代码都在里面"则暗示我们将深入探究Struts2的核心机制和实现细节。 Struts2源码分析可以从以下几个关键点展开: 1. ...

    struts2 src lib

    在这个"struts2 src lib"压缩包中,包含的是Struts2框架的源代码(src)和库文件(lib)。 源码(src)部分是Struts2的核心组件和模块的Java源代码,这对于开发者来说是非常宝贵的资源。通过阅读源码,开发者可以...

    struts2 interceptor annotation plugin

    而"struts2 interceptor annotation plugin"则是Struts2框架提供的一种使用注解来配置拦截器的方式,这种方式更加简洁、直观,减少了XML配置文件的复杂性。 注解(Annotation)是Java编程语言的一个重要特性,它...

    struts2_src部分

    在“struts2_src”部分,我们主要关注的是Struts2框架的源代码,这对于理解其内部工作原理、进行定制开发或调试是非常有价值的。 一、Struts2框架的核心组件和原理 1. FilterDispatcher:Struts2的核心控制器,它...

    struts2-src.rar

    在"struts2-src.rar"这个压缩包中,包含了Struts2框架的源代码以及相关的插件代码,这对于学习和理解Struts2的工作原理以及进行定制化开发具有极大的价值。 首先,源码分析是理解任何软件框架的基础。通过阅读...

    struts2_cms_src.rar

    Struts2_CMS_Src.rar 是一个包含Struts2内容管理系统源代码的压缩包,它提供了深入了解和学习Struts2框架的机会。Struts2是一个基于MVC(模型-视图-控制器)设计模式的Java Web应用程序框架,它极大地简化了构建可...

    struts-2.3.7-src.zip

    - **com.opensymphony.xwork**包:XWork是Struts 2的基础,提供了动作调度、类型转换、异常处理等功能的实现。 - **ognl**包:Struts 2使用OGNL(Object-Graph Navigation Language)作为表达式语言,处理Action...

    struts_2.2.1_src.zip

    3. **Interceptor(拦截器)**:拦截器是Struts 2中实现AOP(面向切面编程)的关键组件。它们在Action调用前后执行,可以用来实现如日志记录、权限检查、性能监控等功能。 4. **Value Stack(值栈)**:值栈是...

    struts_src-2.1.8.rar

    这个压缩包`struts_src-2.1.8.rar`包含了Struts 2框架的核心源代码和其他相关组件,对于开发者来说是学习和理解Struts 2工作原理的宝贵资源。以下将详细解析这个压缩包中的各个部分: 1. **apps**: 这个目录可能...

    struts_2_src

    本资源"struts_2_src"提供了Struts 2的源代码,非常适合在MyEclipse环境中进行加载和查看,以帮助开发者深入理解其内部工作原理。 Struts 2的核心组件包括Action、Result、Interceptor等。Action是业务逻辑的载体,...

    struts2_src.zip

    它的源代码可以在"struts2_src.zip"这个压缩包中找到,这为开发者提供了一个深入理解框架工作原理、自定义行为或优化性能的机会。"src"标签暗示了这个压缩包包含的是源代码文件。 在Struts2框架中,主要包含以下几...

    Struts2 创建简单步骤

    import org.apache.struts2.interceptor.SessionAware; import com.opensymphony.xwork2.ActionSupport; public class HelloWorldAction extends ActionSupport implements SessionAware { private static final ...

    Struts Study SRC jar包

    7. **Interceptor(拦截器)**:拦截器是Struts2引入的一个强大特性,允许在Action调用前后插入自定义逻辑,例如日志、权限检查等。 在“lib”目录下,你可能会找到Struts框架以及其他依赖的库文件,比如: - **...

    struts2-2.2.1-src.zip

    2. **Interceptor(拦截器)**:拦截器是Struts2处理请求的核心机制,它们在Action调用前后执行,实现了如日志记录、事务管理、权限控制等功能。开发者可以自定义拦截器来满足特定需求。 3. **Plug-in架构**:...

    struts2源代码分析

    5. `org.apache.struts2.interceptor`: 定义了内置的拦截器,拦截器是Struts2处理请求的重要部分,可以进行预处理和后处理操作。 6. `org.apache.struts2.util`: 实用工具包,提供各种辅助功能。 7. `org.apache....

    struts-2.0.14-src.zip

    在【标题】"struts-2.0.14-src.zip"中,我们看到的是Struts2框架的版本号为2.0.14的源码压缩包。这个版本可能发布于若干年前,但它的核心概念和技术对于理解Struts2的工作机制仍然非常有价值。源码的获取通常通过...

    Struts2示例demo

    2. **src/main/resources**:可能有struts.properties或struts.xml,这是Struts2的配置文件,定义了Action的映射、拦截器栈等。 3. **src/main/webapp**:Web应用的根目录,内含WEB-INF目录下的web.xml(定义servlet...

    struts2图片上传并预览

    Struts2是一个强大的Java web应用程序框架,用于构建和部署可维护、高性能的MVC(Model-View-Controller)架构的应用程序。在Web开发中,图片上传和预览是常见的功能需求,尤其对于用户交互丰富的应用来说。Struts2...

    Struts2jar包及dtd文件

    Struts2通过Action和Interceptor的概念,实现了请求的路由和业务逻辑的处理。Action是业务逻辑的载体,Interceptor则是拦截请求并在Action执行前后进行预处理或后处理的组件。此外,Struts2还支持多种视图技术,如...

Global site tag (gtag.js) - Google Analytics