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

JDK动态代理和Cglib动态代理区别

1.如果目标类实现了接口,将会使用JDK动态代理,否则会使用Cglib动态代理;

2.JDK代理使用自己的字节码生成工具生成代理对象,而Cglib会使用ASM字节码生成工具去生成;

3.JDK动态代理是通过反射的方式去实现代理对象的所有方法,通过InvocationHandler接口,重写invoke()方法来实现代理逻辑,其中会调用Proxy.newProxyInstance()来创建目标对象,而Cglib是通过继承的方式;

4.JDK只会生成一个代理对象,而Cglib会生成多个,采用空间换取时间的方式,所以生成效率会比jdk代理慢,但是使用效率会比JDK动态代理快;

5.在后来的版本中(jdk8以后),jdk的速率已经赶上了Cglib动态代理。

http://www.lryc.cn/news/342720.html

相关文章:

  • 牛客 | 字符金字塔
  • 【计算机科学速成课】笔记三——操作系统
  • 用js代码实现贪吃蛇小游戏
  • 微信小程序+esp8266温湿度读取
  • 软考中级-软件设计师(十)网络与信息安全基础知识
  • 推荐一个好用的命令行工具ShellGPT
  • Prompt提示词教程 | 提示工程指南 | 提示词示例 入门篇
  • uniapp + uView动态表单校验
  • 【Linux】HTTPS
  • 语音识别--使用YAMNet识别环境音
  • 前端JS必用工具【js-tool-big-box】,邮箱,手机,身份证号,ip地址等正则验证方法学习
  • notepad++安装 hex-editor插件
  • Ubuntu18.04设置SSH密钥登录
  • 自动化运维管理工具----------Ansible模块详细解读
  • 零基础代码随想录【Day27】|| 39. 组合总和,40.组合总和II, 131.分割回文串
  • 实验15 MVC
  • 《Python编程从入门到实践》day21
  • 上位机图像处理和嵌入式模块部署(树莓派4b镜像烧录经验总结)
  • 简单数据加解密,JS和JAVA同时实现
  • Android Framework中PackageManagerService的深度剖析
  • (AI Web、ChatGPT Native、Ai Loading、AI Tools、知豆AI)
  • VBA 批量处理Excel文件
  • PG实例连接访问控制
  • 2024-05-07 商业分析-如何在社会层面做一个更好的工具人-记录
  • C++设计模式-创建型设计模式
  • code-server容器webpack的ws无法连接解决方法
  • leetcode47-Permutations II
  • 246 基于matlab的交流电机动态方程
  • 7天入门Android开发之第2天——四大组件之活动
  • 自然语言(NLP)