JDBC4.0 |
您所在的位置:网站首页 › nbt的全限定类名 › JDBC4.0 |
一、首先jdbc的SPi加载机制是: driverManager --> 加载Drivers 二、解析 1.首先driverManager 的全限定类名叫 java.sql.DriverManager,他是使用 启动类加载器BootstrapClassLoader去加载的 2.在加载 DriverManager过程中,DriverManager有一行静态代码 ServiceLoader loadedDrivers = ServiceLoader.load(Driver.class);3.这个ServiceLoader.load()方法里面是这样的 public static ServiceLoader load(Class service) { //这里去获取上下文的加载器 ClassLoader cl = Thread.currentThread().getContextClassLoader(); return new ServiceLoader(Reflection.getCallerClass(), service, cl); }4.可是Driver.class是个接口,只有去加载他的实现类,举个例子 com.alibaba.druid.proxy.DruidDriver,这个类就是实现了Driver接口,这个类明显只能应用类加载器才能加载 5结论: 启动类加载器在加载DriverManager的过程中,调起了应用类加载器,这就是所谓的破坏双亲委派模型。 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |