2015-04-05 59 views
0

什麼是驅動程序管理器,爲什麼當您使用JDBC連接到數據庫時需要? 我試圖連接到數據庫,而下面的語句給定:什麼是JDBC驅動程序管理器?

Class.forName("com.mysql.jdbc.Driver").newInstance(); 

但它失敗。那麼,當使用java連接到mysql數據庫時,這行代碼會做什麼?

+0

使用最近的驅動程序版本和Java 6/JDBC 4或更高版本的行是完全不相關的。 – 2015-04-06 08:34:18

+0

[目的'Class.forName(「MY \ _JDBC \ _DRIVER」)']的可能重複項目(http://stackoverflow.com/questions/7662902/what-is-the-purpose-class-fornamemy- JDBC驅動程序) – 2015-04-06 08:39:11

回答

0

如果您檢查Oracle文檔,您將獲得清晰的圖像。

The basic service for managing a set of JDBC drivers.

Oracle Docs

首先

此外,還需要建立與您 要使用的數據源的連接。數據源可以是數據庫管理系統,傳統文件系統或其他具有相應JDBC驅動程序的其他數據源。典型地,一個 JDBC應用程序連接到使用兩個 類中的一個目標數據源:

的DriverManager:這充分實現類連接的 應用到數據源,它是由一個數據庫URL指定。 當這個類首次嘗試建立連接時,它會自動加載在類路徑中找到的任何JDBC 4.0驅動程序。 請注意,您的應用程序必須手動將任何JDBC驅動程序加載到版本4.0之前的 。

的DataSource:該接口優於 DriverManager的,因爲它允許對底層數據細節 源是透明的應用程序。 DataSource對象的 屬性被設置爲表示特定的數據源。請參閱 連接數據源對象以獲取更多信息。有關使用DataSource類開發應用程序的更多信息 ,請參閱最新的Java EE教程。

0

這行代碼返回驅動類的新對象加載到內存中。

DriverManager類輔助連接到數據源。 註冊和取消註冊驅動程序類。 設置登錄超時計數器。