JDK动态代理demo-创新互联
1,创建一个UserService类:
成都创新互联是一家网站设计公司,集创意、互联网应用、软件技术为一体的创意网站建设服务商,主营产品:成都响应式网站建设公司、成都品牌网站建设、营销型网站建设。我们专注企业品牌在网站中的整体树立,网络互动的体验,以及在手机等移动端的优质呈现。成都网站建设、网站制作、移动互联产品、网络运营、VI设计、云产品.运维为核心业务。为用户提供一站式解决方案,我们深知市场的竞争激烈,认真对待每位客户,为客户提供赏析悦目的作品,网站的价值服务。public interface UserService { public String getTheName(int id); public Integer getTheAge(int id); }
2,创建实现类UserServiceImpl
public class UserServiceImpl implements UserService { @Override public String getTheName(int id) { return "小风"; } @Override public Integer getTheAge(int id) { return 10; } }
3, 测试类JDKProxyTest
public class JDKProxyTest implements InvocationHandler { private Object target; JDKProxyTest() { super(); } JDKProxyTest(Object target) { super(); this.target = target; } @Override public Object invoke(Object proxy, Method method, Object[] args) throws Throwable { System.out.println("++++++调用方法之前: " + method.getName() + "++++++"); Object result = method.invoke(target, args); System.out.println("++++++调用方法之后: " + method.getName() + "++++++"+result); return result; } public static void main(String[] args) { UserServiceImpl userService = new UserServiceImpl(); InvocationHandler handler=new JDKProxyTest(userService); UserService userServiceProxy= (UserService) Proxy.newProxyInstance(userService.getClass().getClassLoader(), userService.getClass().getInterfaces(), handler); System.out.println(userServiceProxy.getTheName(1)); System.out.println(userServiceProxy.getTheAge(1)); } }
本文标题:JDK动态代理demo-创新互联
文章地址:http://pwwzsj.com/article/dpdjpo.html