許多開發(fā)人員在使用Java連接MySQL數(shù)據(jù)庫時(shí),通常會(huì)使用Class.forName方法加載驅(qū)動(dòng)程序,這是MySQL JDBC驅(qū)動(dòng)程序的標(biāo)準(zhǔn)方法。通過這種方式,Java應(yīng)用程序可以與MySQL數(shù)據(jù)庫進(jìn)行通信并進(jìn)行數(shù)據(jù)交互。
// 加載MySQL JDBC驅(qū)動(dòng)程序 Class.forName("com.mysql.jdbc.Driver");
這個(gè)方法告知JVM,需要加載一個(gè)特定的JDBC驅(qū)動(dòng)程序類。”forName”是一個(gè)靜態(tài)方法,接受一個(gè)字符串參數(shù),該參數(shù)是要加載的類的完全限定名稱。這就是為什么我們必須傳遞”com.mysql.jdbc.Driver”的原因。
你可能會(huì)感到困惑為什么要在Java程序中加載MySQL的JDBC驅(qū)動(dòng)程序?其原因是,我們必須將MySQL JDBC包導(dǎo)入到Java應(yīng)用程序中。由于Java的類加載程序是按需加載的,因此如果沒有加載JDBC驅(qū)動(dòng)程序,則應(yīng)用程序?qū)o法連接到MySQL數(shù)據(jù)庫。
因此,在Java應(yīng)用程序中連接MySQL數(shù)據(jù)庫時(shí),始終使用以下代碼來加載MySQL JDBC驅(qū)動(dòng)程序:
Class.forName("com.mysql.jdbc.Driver");
這個(gè)小技巧可以確保JVM加載MySQL JDBC驅(qū)動(dòng)程序并在需要時(shí)進(jìn)行連接,從而使應(yīng)用程序能夠穩(wěn)健運(yùn)行。