jvm
踏雪江南
菜鸟一个相互探讨
展开
-
java修改第三方源码方法
修改源码的业务场景在java代码编写的时候,引入各种开发现成的开发包。由于源码中出现各种不满足我们当前业务的逻辑,但是我们并不想整体架构进行变更,这个时候就可以通过修改源码来实现修改部分功能来实现代码的修改。修改源码方法:找到报错的核心的类找到class类反编译为java文件并修改报错的地方在工程中创建为相同全类名的java文件将错误的地方改为自己想改的内容运行项目举例说明我们项目中用到了阿里开源的datax插件来进行数据交换,mysqlwrite 只要求insert权限即可但是我原创 2020-11-14 16:24:42 · 2304 阅读 · 0 评论 -
jvm双亲委派机制之打破双亲委派机制
在上一篇博客中介绍了一下如何书写自定义加载器.传送门这一篇要介绍的就是自定义类加载器来打破双亲委派机制.思路就是加载类的时候不走parent属性来找,直接从指定的classpath中找package com.bonc.jvm;import java.io.FileInputStream;import java.lang.reflect.Method;/** * @Classname MyClassLoadTEst * @Description TODO * @Date 2020/6/1原创 2020-06-14 18:04:45 · 1392 阅读 · 0 评论 -
JVM之自定义类加载器入门
在上一篇博客中写到双亲委派机制.传送门了解完双亲委派机制那么对JVM类加载器原理有一定的了解,那么书写定义类加载加载器就不会太难了.主要是重写ClassLoader中findClass方法这个方法主要是根据包名查找class文件package com.bonc.jvm;import java.io.FileInputStream;import java.lang.reflect.Method;/** * @Classname MyClassLoadTEst * @Description原创 2020-06-14 17:12:12 · 250 阅读 · 0 评论 -
jvm双亲委派机制初窥
JVM整体流程如上图所示.java类的加载是有加载器来进行的.JVM中有以下几种类加载器:1.引导类加载器BootstrapClassLoader :负责加载支撑JVM运行的位于JRE的lib目录核心类库,比如rt.jar,charsets.jar等2.扩展类加载器ExtClassLoader :负责加载支撑JVM运行的位于JRE的lib目录下的ext扩展目录下的JAR包3.应用程序类加载器:负责加载ClassPath路径下的类包4.自定义加载器:负责加载用户自定义路径下的类包. public .原创 2020-06-14 16:21:33 · 284 阅读 · 0 评论 -
JVM类加载机制入门
package com.bonc.jvm;/** * @Classname TestDynamicLoad * @Description TODO * @Date 2020/6/14 11:05 * @Created by sz */public class TestDynamicLoad { static { System.out.println("**************加载静态代码块*************"); } public st原创 2020-06-14 14:17:55 · 129 阅读 · 0 评论