最近在复习Spring使用
JDK动态代理是接口级别的实现,这在使用时很好用 接口的实现是指当获得一个该接口的代理时,只需要在给一个实现该接口的委托,就实现了接口的代理
首先是JDK给的动态代理的实现:



结果:

注意到main方法 我在创建代理的newInstance()方法的第二个参数那创建的是一个只用一个接口的数组 并且成功返回该接口的代理,由此可以看出,JDK代理是面向接口的。而不是面向某个特定的类,这无疑提高了代码可重用性
至于Spring两者兼有,更有甚者execution表达式使用的时方法级别的代理,估计是像更好的控制粒度吧,毕竟某个接口可能很多方法实现起来的代理方法可能是不一样的 需要合理斟酌
本文探讨了Spring框架中使用JDK动态代理实现接口级别的代理方式,并对比了面向接口与面向类的不同之处。同时介绍了Spring如何支持更细粒度的方法级别代理。
624

被折叠的 条评论
为什么被折叠?



