关闭

代理模式处理事务

169人阅读 评论(0) 收藏 举报

package net.company.util;

import java.lang.reflect.InvocationHandler;
import java.lang.reflect.*;

public class TxManagerProxy implements InvocationHandler {

 private Object object;
 public Object getInstance(Object object){
  this.object=object;
  return Proxy.newProxyInstance(this.object.getClass().getClassLoader(),
                          this.object.getClass().getInterfaces(),
                          this);
  
 }
 public Object invoke(Object proxy, Method method, Object[] args)
   throws Throwable {
  TxManager.begin();
  System.out.println("==事务开始==");
  Object object=method.invoke(this.object, args);
  System.out.println("==事务结束==");
  TxManager.commit();
  return object;
 }

}

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:155530次
    • 积分:2643
    • 等级:
    • 排名:第13766名
    • 原创:106篇
    • 转载:47篇
    • 译文:1篇
    • 评论:5条
    文章分类
    最新评论