日期:2014-05-16  浏览次数:20502 次

装载JDBC驱动的3种方式
在使用JDBC的第一步就是装载JDBC驱动。一个JDBC驱动是一个实现了java.sql.Driver接口的类。

有3中常用的方法可以装载JDBC驱动。

方法1:使用Class.forName()
方法2:使用DriverManager.registerDriver()
方法3:使用Thread类进行装载

方法1:使用Class.forName()
这是最常用的一种方式。在Java语言中,如果调用Class.forName(),JVM将会装载对应的类。例如:(这里假设使用mysql)
String className = "org.gjt.mm.mysql.Driver";
Class.forName(className);

上述代码执行的效果是JVM将会装载org.gjt.mm.mysql.Driver的实例。根据JDBC规范,所有的JDBC驱动都必须把自己注册到java.sql.DriverManager。大部分驱动注册的方式是使用静态代码块。
static {
....//获得一个驱动的实例driver
DriverManager.registerDriver(driver);
}


方法2:使用DriverManager.registerDriver()
try {
  DriverManager.registerDriver(new org.gjt.mm.mysql.Driver()); 
}catch(SQLException e) {
  e.printStackTrace();
}


方法3:使用Thread类进行装载
String driverName = "org.gjt.mm.mysql.Driver";
try {
  Thread.currentThread().getContextClassLoader().loadClass(driverName);
}catch(SQLException e) {
  e.printStackTrace();
}


三种方法互相比较,方法一最为简洁,因此推荐使用。
1 楼 段箭*残箫 2010-05-09  
是啊  第一种方式方便扩展,可以通过配置文件的方式得到Driver的全类名
2 楼 numen_wlm 2010-06-08  
感觉第二种方式更OO些