zoukankan      html  css  js  c++  java
  • jdk动态代理

    package proxy.jdk;
    
    public interface UserDao {
    
        public void add();
        public void delete();
        
    }
    package proxy.jdk;
    
    public class UserDaoimpl implements UserDao{
    
        @Override
        public void add() {
            // TODO Auto-generated method stub
            System.out.println("user add success!");
        }
    
        @Override
        public void delete() {
            // TODO Auto-generated method stub
            System.out.println("user delete success!");
        }
    
    }
    package proxy.jdk;
    
    import java.lang.reflect.InvocationHandler;
    import java.lang.reflect.Method;
    import java.lang.reflect.Proxy;
    
    public class Handler implements InvocationHandler{
    
        public Object target;
        
        public Handler(Object target) {
            super();
            this.target = target;
        }
    
        @Override
        public Object invoke(Object proxy, Method method, Object[] args)
                throws Throwable {
            // TODO Auto-generated method stub
            System.out.println("代理执行前");
            Object o = method.invoke(target, args);
            System.out.println("代理执行后");
            return o;
        }
        
        public Object getProxy() {
            return Proxy.newProxyInstance(Thread.currentThread().getContextClassLoader(), target.getClass().getInterfaces(), this);
        }
    
    }
    package proxy.jdk;
    
    public class Test {
    
        public static void main(String[] args) {
            
            UserDao userDao=new UserDaoimpl();
            Handler handler=new Handler(userDao);
            UserDao userProxy = (UserDao) handler.getProxy();
            userProxy.add();
            userProxy.delete();
            
        }
    }
  • 相关阅读:
    鼠标移上与移出事件
    最小高度 最大高度
    鼠标移上改变光标
    设置圆角
    iframe 子窗口获取父窗口元素 父窗口获取子窗口元素
    parent
    禁用滚动条
    mysql--user表
    mysql客户端连不上数据库
    linux下安装MySQL
  • 原文地址:https://www.cnblogs.com/Danial7777777/p/9398612.html
Copyright © 2011-2022 走看看