package dyn;

public interface RealService {

    void buy();

}

===================
package dyn; public class RealServiceImpl implements RealService { @Override
public void buy() {
//do real service ,such as crud
System.out.println("buy big hourse... ....");
} }
=================== package dyn; import java.lang.reflect.InvocationHandler;
import java.lang.reflect.Method;
import java.lang.reflect.Proxy; public class MyInvocationHandler implements InvocationHandler {
//realObject
private RealService target; public MyInvocationHandler(RealService target) {
super();
this.target = target;
} @Override
public Object invoke(Object arg0, Method method, Object[] obj)
throws Throwable {
System.out.println("make big money... ...");
Object o = method.invoke(target,obj);
System.out.println("kiss QQ");
return o; } public Object getRealServiceProxyObj() {
return Proxy.newProxyInstance(Thread.currentThread().getContextClassLoader(), target.getClass().getInterfaces(), this);
} }
=============================== package dyn; public class TestDynProxy { public static void main(String[] args) {
// reql obj
RealService real = new RealServiceImpl();
// trans 中间商
MyInvocationHandler invocationHandler = new MyInvocationHandler(real);
// proxy obj
RealService realServiceProxyObj = (RealService)invocationHandler.getRealServiceProxyObj(); realServiceProxyObj.buy(); }
}

java dyn proxy的更多相关文章

  1. java中Proxy(代理与动态代理)

    转自: https://blog.csdn.net/pangqiandou/article/details/52964066 一.代理的概念 动态代理技术是整个java技术中最重要的一个技术,它是学习 ...

  2. JAVA的Proxy动态代理在自动化测试中的应用

    JAVA的动态代理,在MYBATIS中应用的很广,其核心就是写一个interface,但不写实现类,然后用动态代理来实例化并执行这个interface中的方法,话不多说,来看一个实现的例子: 1.先定 ...

  3. Java dynamical proxy demo

    今天练习了一下动态代理的一个方面,假设使用它来完成自动设置默认不提交,启动事务,获取到异常则回滚,正常执行则提交. 如果不使用动态代理,则需要在每个方法本身里面设置Connection,写try,ca ...

  4. java中Proxy类初探

    在java中提供了一个动态代理类,这个类位于java.lang.reflect包中的Proxy类中.什么是动态代理类呢?就是可以在运行时创建一个实现了一组给定接口的新类.听上去有点高深的样子,其实是提 ...

  5. Java进阶 | Proxy动态代理机制详解

    一.Jvm加载对象 在说Java动态代理之前,还是要说一下Jvm加载对象的过程,这个依旧是理解动态代理的基础性原理: Java类即源代码程序.java类型文件,经过编译器编译之后就被转换成字节代码.c ...

  6. Java设计模式—Proxy动态代理模式

    代理:设计模式 代理是一种常用的设计模式,其目的就是为其他对象提供一个代理以控制对某个对象的访问.代理类负责为委托类预处理消息,过滤消息并转发消息,以及进行消息被委托类执行后的后续处理. 图 1. 代 ...

  7. Java JVM proxy setting

    -Dhttp.proxyPort=8080(your port) -Dhttp.proxyHost=192.168.19.200(your IP) -Dhttp.nonProxyHosts=local ...

  8. Proxy Pattern(Java动态代理和cglib的实现)

    代理模式:给某一个对象提供代理对象,由代理对象控制具体对象的引用. 代理,指的就是一个角色对表另一个角色采取行动,就生活中,一个红酒厂商,是不会直接把红酒零销给客户的,都是通过代理完成他的销售业务.而 ...

  9. Java的动态代理(dynamic proxy)

    什么是动态代理(dynamic proxy) 动态代理(以下称代理),利用Java的反射技术(Java Reflection),在运行时创建一个实现某些给定接口的新类(也称“动态代理类”)及其实例(对 ...

随机推荐

  1. 一种swift编码风格指南(供参考,by linkedin)

    http://www.cocoachina.com/swift/20160701/16894.html

  2. Qt获取组合键

    CTRL+Enter发送信息的实现 在现在的即时聊天程序中,一般都设置有快捷键来实现一些常用的功能,类似QQ可以用CTRL+Enter来实现信息的发送. 在QT4中,所有的事件都继承与QEvent这个 ...

  3. C/C++链表操作(面试)

    1.为了反转这个单链表,我们先让头结点的next域指向结点2,再让结点1的next域指向结点3,最后将结点2的next域指向结点1,就完成了第一次交换,顺序就变成了Header-结点2-结点1-结点3 ...

  4. One Time Auth

    One Time Auth One-time authentication (shortened as OTA) is a new experimental feature designed to i ...

  5. 配置 android环境

    1.如上图,下载最新adt-bundle: http://developer.android.com/sdk/index.html   里面集成了 eclipse,SDK,SDK Manager. 2 ...

  6. c#上传文件(一)使用 .net 控件上传文件

    1.html代码: <body> <form id="form1" runat="server"> <div> <as ...

  7. 【转】为什么调用 FragmentPagerAdapter.notifyDataSetChanged() 并不能更新其 Fragment?

    为什么调用 FragmentPagerAdapter.notifyDataSetChanged() 并不能更新其 Fragment? 转自:http://www.apkbus.com/android- ...

  8. Condition

    1.Condition是个接口,其实现类是同步器里面的一个内部静态类:ConditionObject. 2.Lock是个接口,该接口里面有个方法是:Condition newCondition(); ...

  9. MySQL注释符

    mysql注释符有三种:1.#...(注释至行末,推荐)2.-- ...(两条短线之后又一个空格)3./*...*/(多行注释) 1.

  10. LeetCode Inorder Successor in BST

    原题链接在这里:https://leetcode.com/problems/inorder-successor-in-bst/ Given a binary search tree and a nod ...