当前位置: 首页 > news >正文

如何在免费网站上做推扩wordpress标题怎么

如何在免费网站上做推扩,wordpress标题怎么,wordpress代码解释,威海建设局官方网站文章目录 一、JDK动态代理1、关键类和接口2、实现步骤 二、CGLIB动态代理1、关键类2、实现步骤 三、总结 Java中的动态代理是一种设计模式#xff0c;它允许在运行时创建代理对象#xff0c;而不是在编译时。代理对象可以用来代理真实对象的方法调用。 Java中的动态代理主要… 文章目录 一、JDK动态代理1、关键类和接口2、实现步骤 二、CGLIB动态代理1、关键类2、实现步骤 三、总结 Java中的动态代理是一种设计模式它允许在运行时创建代理对象而不是在编译时。代理对象可以用来代理真实对象的方法调用。 Java中的动态代理主要有两种实现方式JDK动态代理和CGLIB动态代理。 一、JDK动态代理 JDK动态代理使用Java标准库中的java.lang.reflect包来创建代理对象。它适用于实现了接口的类通过接口类型来代理对象。 1、关键类和接口 InvocationHandler接口 这是一个接口必须实现其invoke方法代理对象的所有方法调用都会转发到这个方法。Proxy类 这是一个用来创建代理对象的类提供了静态方法newProxyInstance来生成代理对象。 2、实现步骤 1定义接口和实现类 public interface MyService {void perform(); }public class MyServiceImpl implements MyService {Overridepublic void perform() {System.out.println(Executing perform method);} }2实现InvocationHandler接口编写代理逻辑 import java.lang.reflect.InvocationHandler; import java.lang.reflect.Method;public class MyInvocationHandler implements InvocationHandler {private Object target;public MyInvocationHandler(Object target) {this.target target;}Overridepublic Object invoke(Object proxy, Method method, Object[] args) throws Throwable {System.out.println(Before method invoke);Object result method.invoke(target, args);System.out.println(After method invoke);return result;} }3使用Proxy.newProxyInstance方法创建代理对象 import java.lang.reflect.Proxy;public class Main {public static void main(String[] args) {MyService myService new MyServiceImpl();MyInvocationHandler handler new MyInvocationHandler(myService);MyService proxyInstance (MyService) Proxy.newProxyInstance(myService.getClass().getClassLoader(),myService.getClass().getInterfaces(),handler);proxyInstance.perform();} }二、CGLIB动态代理 CGLIBCode Generation Library是一种强大的字节码生成库它允许在运行时创建子类适用于没有实现接口的类。CGLIB通过继承被代理类来创建代理对象因此无法代理final类。 1、关键类 Enhancer类 这是CGLIB用来生成代理类的主要类通过设置超类和回调来创建代理对象。MethodInterceptor接口 这是一个接口类似于InvocationHandler需要实现intercept方法。 2、实现步骤 1添加CGLIB依赖 在项目中添加CGLIB库的依赖。对于Maven项目 dependencygroupIdcglib/groupIdartifactIdcglib/artifactIdversion3.3.0/version /dependency2定义实现类定义一个没有实现接口的类 public class MyService {public void perform() {System.out.println(Executing perform method);} }3实现MethodInterceptor编写代理逻辑。 import net.sf.cglib.proxy.MethodInterceptor; import net.sf.cglib.proxy.MethodProxy; import java.lang.reflect.Method;public class MyMethodInterceptor implements MethodInterceptor {Overridepublic Object intercept(Object obj, Method method, Object[] args, MethodProxy proxy) throws Throwable {System.out.println(Before method invoke);Object result proxy.invokeSuper(obj, args);System.out.println(After method invoke);return result;} }4使用Enhancer类创建代理对象。 import net.sf.cglib.proxy.Enhancer;public class Main {public static void main(String[] args) {Enhancer enhancer new Enhancer();enhancer.setSuperclass(MyService.class);enhancer.setCallback(new MyMethodInterceptor());MyService proxyInstance (MyService) enhancer.create();proxyInstance.perform();} }三、总结 JDK动态代理适用于实现了接口的类通过InvocationHandler处理代理逻辑。CGLIB动态代理适用于没有实现接口的类通过继承实现代理使用MethodInterceptor处理代理逻辑。性能更优。 动态代理在AOP面向切面编程、拦截器、权限控制、事务管理等领域有广泛应用提供了灵活的方式来在运行时增强对象行为。
http://www.hkea.cn/news/14285033/

相关文章:

  • 化工材料 技术支持 东莞网站建设wordpress多重搜索
  • 易语言做网站登录器wordpress自动推送token
  • 宿迁公司做网站百度域名是什么
  • 机场建设投资公司官方网站山西建网站
  • 网站推广合作响应式设计是什么意思
  • 潮州市住房和城乡建设局网站做销售记住这十句口诀
  • 网站建设百度优化高性能网站建设进阶
  • 考试网站怎么做的wordpress不居中
  • 网站参考页面设计网络营销的分类
  • 推荐网站建设服务话术网站建设的经费预算报告
  • 全国各大网站开发免费app
  • p2p做网站百度本地推广
  • 响应式设计的网站docker实际企业解决方案
  • 建设品牌网站自己的网站怎么赚钱
  • 网站后台添加投票系统汽车4s店网站建设方案
  • 做网站可行性分析做网站需要买多大空间
  • 企业网站有哪些功能北京vi设计公司广州标志设计
  • 百度四川建设厅网站百度搜索排名购买
  • 东营网站建设推广公司网站被百度收录吗
  • 网站建设哪家最好用wordpress自定义布局
  • 做家具有那个网站好手机百度怎么翻译网页
  • 杭州精品课程网站建设用asp做的大型网站
  • 酒店网站建设的基本内容建设网站要求
  • 网站树状型结构优化彩票网站搭建
  • 四川专业网站建设公司移动端原型
  • 百度免费网站申请现在开天猫店需要多少钱
  • 做电力 公司网站那间公司做网站好
  • 棋牌网站代理北京网站优化合作
  • 网站内容一样影响收录淘宝客网站应该怎么做
  • 代刷网站只做软件下载网站开发协议范本