一、原理区别: java动态代理是利用反射机制生成一个实现代理接口的匿名类,在调用具体方法前调用InvokeHandler来处理。 而cglib动态代理是利用asm开源包,对代理对象类的class文件加载进来,通过修改其字节码生成子类来处理。 1、如果目标对象实现了接口,默认情况下会采用JDK的动态 ...
分类:
编程语言 时间:
2020-04-04 09:45:51
阅读次数:
85
参考链接:https://blog.csdn.net/baicp3/article/details/13512237 参考链接https://blog.csdn.net/sinat_32034679/article/details/76572613?utm_source=blogxgwz5 除了以上 ...
分类:
编程语言 时间:
2020-03-30 16:18:41
阅读次数:
51
观察者模式,我们有很多其他的方式来称呼它。比如熟悉的发布/订阅模式,回调方式,Listen监听等。 我们看到很多源码中有Observer,Listen,Hook,Callback,基本用到了观察者模式; 话不多说,直接来点代码说明下 首先定义被观察者(抽象的,公有的) public interfac ...
分类:
其他好文 时间:
2020-03-27 13:13:46
阅读次数:
111
SPI 全称为 Service Provider Interface,是一种服务发现机制。当程序运行调用接口时,会根据配置文件或默认规则信息加载对应的实现类。所以在程序中并没有直接指定使用接口的哪个实现,而是在外部进行装配。 ...
分类:
编程语言 时间:
2020-03-27 12:46:55
阅读次数:
68
写在前面的话 相关背景及资源: "曹工说Spring Boot源码(1) Bean Definition到底是什么,附spring思维导图分享" "曹工说Spring Boot源码(2) Bean Definition到底是什么,咱们对着接口,逐个方法讲解" "曹工说Spring Boot源码(3) ...
分类:
编程语言 时间:
2020-03-25 23:39:30
阅读次数:
66
援引:使用CGlib出现java.lang.NoClassDefFoundError: org/objectweb/asm/Type异常 援引:class net.sf.cglib.core.DebuggingClassWriter has interface org.objectweb.asm.C ...
分类:
编程语言 时间:
2020-03-25 13:46:20
阅读次数:
103
一、Java Properties类 Java中有个比较重要的类Properties(Java.util.Properties),主要用于读取Java的配置文件,各种语言都有自己所支持的配置文件,配置文件中很多变量是经常改变的,这样做也是为了方便用户,让用户能够脱离程序本身去修改相关的变量设置。像P ...
分类:
编程语言 时间:
2020-03-22 15:49:13
阅读次数:
71
MISP汇编 0.常见操作符 表示 表示 表示 表示 如果相等,则跳转LABEL 从内存加载寄存器 存储回去 加减乘除 、`subi divi multi` 表示 如果小于执行 LABEL寻址 寄存器寻址 多合一跳转 当前PC + 4存入 $ra寄存器 返回 举例 1.判断求和 汇编 2.for l ...
分类:
其他好文 时间:
2020-03-19 20:08:39
阅读次数:
70
C51移动PC寄存器数值(通过asm实现跳转) ? 在这里前人肯定做过很多尝试了。这是在我很多年前的工程上做了一点修改的。 ...
分类:
移动开发 时间:
2020-03-19 09:28:18
阅读次数:
78
https://sitereport.netcraft.com/https://asm.ca.com/en/ping.php
分类:
其他好文 时间:
2020-03-18 11:13:00
阅读次数:
69