2012-04-06 54 views
5

我正在使用服務器的管理控制檯爲GlassFish創建JDBC連接池資源。在Glassfish中創建數據源

頁面上用於創建池的字段之一被標記爲「資源類型」。該字段有四個可能的值:javax.sql.DataSource,javax.sql.XADataSource,javax.sql.ConnectionPoolDataSource和javax.sql.Driver,但創建JDBC連接池嚮導的幫助文本沒有太多的信息這些選擇的優點和缺點。

當提示選擇我應該選擇的資源類型?

我打算連接到本地的MySQL服務器。我們很高興能夠解釋下拉選項之間的差異。

enter image description here

+0

與GF Admin Console的New JDBC Connection Pool頁面關聯的幫助頁面的內容可能有所幫助:http:// localhost:4848/common/help/help.jsf ?contextRef =/resource/jdbc/en/help/ref-jdbcconnectionpoolnew1.html – vkraemer 2012-04-06 19:14:34

+0

這不提供太多的幫助。它只列出了選項。 – LuckyLuke 2012-04-06 19:24:01

回答

6

下面的地方,你需要列出的每個資源類型的場景。希望這可以幫助。

DataSource DataSource DataSource對象是Connection對象的工廠。當使用簡單的數據源時,應用服務器使用自己的池而不是本地池。

ConnectionPoolDataSource ConnectionPoolDataSource對象是PooledConnection對象的工廠。 ConnectionPoolDataSource用於訪問通過JDBC驅動程序實現本地池的PooledConnection。在這種情況下,應用程序服務器可以使用此本機接口實現連接池。請參閱Java API以瞭解PooledConnection是什麼...... ConnectionPoolDataSource可以使用第三方實現進行池化 - 就我所知的Tomcat而言,例如,使用DBCP連接池。

XADataSource 如果您想執行分佈式事務,則需要XADataSource。如果應用程序

  • 使用Java事務API(JTA)
  • 包括單交易
  • 訪問多種資源,如數據庫和Java消息中的多個數據庫更新,您應該使用的,而不是數據源的XADataSource在事務處理期間的服務(JMS)
+0

默認的java.sql.Driver一個呢? Downvoted爲此。 – 2017-10-12 08:45:00