使用JDBC的時候,我們都會按照推薦的加入下面一條語句:
Class.forName("com.mysql.jdbc.Driver");
這條語句如果不添加就會錯誤,但是這條語句好像只是加載了一個類而已,沒有執行任何操作。那麼爲什麼必須添加這條語句呢?
我們切進去看一下com.mysql.jdbc.Driver源碼:
static {
try {
java.sql.DriverManager.registerDriver(new Driver());
} catch (SQLException E) {
throw new RuntimeException("Can't register driver!");
}
}
根據我們之前對類加載的知識,很明顯會執行靜態塊,因此會執行java.sql.DriverManager.registerDriver(new Driver());這樣就加載了驅動類。