Class类forName方法
java.lang.Class<T>
public static Class<?> forName(String className) throws ClassNotFoundException
利用Class类提供的方法实例化对象
Class.forName("org.gjt.mm.mysql.Driver");
package org.gjt.mm.mysql;
import java.sql.SQLException;
public class Driver extends com.mysql.jdbc.Driver {
public Driver() throws SQLException {
}
}
Driver类继承自com.mysql.jdbc.Driver方法。com.mysql.jdbc.Driver 中静态块,调用DriverManager类静态方法,将实例化Driver类注册到DriverManager中。
package com.mysql.jdbc;
import java.sql.DriverManager;
import java.sql.SQLException;
public class Driver extends NonRegisteringDriver implements java.sql.Driver {
public Driver() throws SQLException {
}
static {
try {
DriverManager.registerDriver(new Driver());
} catch (SQLException var1) {
throw new RuntimeException("Can't register driver!");
}
}
}
DriverManager类中getConnection方法,取得注册在DriverManager类中的驱动对象。
public static Connection getConnection(String url,String user, String password) throws SQLException