美文网首页
Class.forName()加载jdbc driver

Class.forName()加载jdbc driver

作者: lunabird | 来源:发表于2018-08-10 09:25 被阅读34次

Class.forName(xxx.xx.xx)返回的是一个类。
Class.forName(xxx.xx.xx)的作用是要求JVM查找并加载指定的类,也就是说JVM会执行该类的静态代码段。
Class.forName("")的作用是要求JVM查找并加载指定的类,如果在类中有静态初始化器的话,JVM必然会执行该类的静态代码段。

而在JDBC规范中明确要求这个Driver类必须向DriverManager注册自己,即任何一个JDBC Driver的 Driver类的代码都必须类似如下:

public class MyJDBCDriver implements Driver {
   static {
     DriverManager.registerDriver(new MyJDBCDriver());
   }
}

既然在静态初始化器的中已经进行了注册,所以我们在使用JDBC时只需要Class.forName(XXX.XXX);就可以了。

相关文章

网友评论

      本文标题:Class.forName()加载jdbc driver

      本文链接:https://www.haomeiwen.com/subject/kzzhbftx.html