class MyProxyUtil {

    public static BaseService getBaseServiceWithJdk(BaseService baseService) {


        Object o = Proxy.newProxyInstance(
                // 目标对象的加载器
                baseService.getClass().getClassLoader(),
                // 目标对象的所有接口
                baseService.getClass().getInterfaces(),
                // 代理对象执行处理器
                new InvocationHandler() {
                    @Override
                    public Object invoke(Object proxy, Method method, Object[] args) throws Throwable {
                        // do outher
                        System.out.println("jdk代理");
                        // method.invoke(baseService, args) 一定不能忘记 ， 忘记了目标方法就不执行了
                        return method.invoke(baseService, args);
                    }
                });
        return (BaseService) o;
    }

}