2
當我編寫連接池連接到數據庫時,我總是對使用基於驅動程序的連接或基於數據源的連接的區別感到困惑。看起來他們倆都可以完成任務,但我不確定他們的區別。任何人都可以告訴我,或給我一些鏈接?在編寫JDBC連接池時,使用Driver或DataSource有什麼區別?
在此先感謝。
當我編寫連接池連接到數據庫時,我總是對使用基於驅動程序的連接或基於數據源的連接的區別感到困惑。看起來他們倆都可以完成任務,但我不確定他們的區別。任何人都可以告訴我,或給我一些鏈接?在編寫JDBC連接池時,使用Driver或DataSource有什麼區別?
在此先感謝。
DataSource
和Driver
不可比 - DataSource
和DriverManager
是。
Driver
是JDBC的基本結構,而不會去任何地方。 JDBC驅動程序實現提供了這一點。
DriverManager
是舊的,不靈活且unofficially deprecated:
的
DataSource
接口,該JDBC 2.0 API在新,提供了另一種方式連接到數據源。使用DataSource
對象是連接數據源的首選方式。
所以您的主界面,爲您的池DataSource
,不DriverManager
互動。然而,Driver
類仍將被使用。
順便說一句,你爲什麼寫自己的連接池?目前已經有(至少)兩種高質量的開源實現(DBCP和C3P0)。
我的編程有一些舊代碼,我不能改變並有自己的連接池。謝謝。 – lamwaiman1988 2011-02-14 01:09:44