OceanBase Connector/J 打開與數(shù)據(jù)庫的連接

2021-06-30 14:19 更新

OceanBase Connector/J 支持兩種數(shù)據(jù)庫連接方式:DriverManager 和數(shù)據(jù)連接池。

使用 DriverManager

與 OceanBase Connector/J 建立連接時(shí),推薦使用 DriverManager 類。使用 DriverManager 類時(shí),無需配置,就可以自動(dòng)加載 OceanBase Connector/J,示例如下:

Connection connection = DriverManager.getConnection("jdbc:oceanbase://lt:2883/user=root&password=***");

使用數(shù)據(jù)連接池

與 OceanBase Connector/J 建立連接的另一種方法是使用連接池。

OceanBase Connector/J 支持 2 種不同的 Datasource Pool 實(shí)現(xiàn):

  • OceanbaseDataSource:基本實(shí)現(xiàn)。每次調(diào)用 getConnection() 方法時(shí)都會(huì)創(chuàng)建一個(gè)新連接。

  • OceanbasePoolDataSource:連接池實(shí)現(xiàn)。連接池用于集中維護(hù)連接資源,當(dāng)收到新的連接請(qǐng)求時(shí),會(huì)從該池中借用一個(gè)連接。

內(nèi)部池

驅(qū)動(dòng)程序的內(nèi)部池配置提供了非常快速的池實(shí)現(xiàn),并解決了以下大多數(shù) Java 池具有的問題:

  • 釋放后出現(xiàn)兩種不同的連接狀態(tài)清理方式

  • 處理非活躍連接(如果一段時(shí)間后不使用,則池中的連接將被釋放,避免在達(dá)到 @wait_timeout 閾值之后,由于服務(wù)器關(guān)閉連接而產(chǎn)生的問題)。

外部池

使用外部連接池時(shí),必須配置 OceanBase 驅(qū)動(dòng)程序類 com.oceanbase.jdbc.Driver

示例:使用 hikariCP JDBC 連接池。

final HikariDataSource ds = new HikariDataSource();
ds.setMaximumPoolSize(10);
ds.setDriverClassName("com.oceanbase.jdbc.Driver");
ds.setJdbcUrl("jdbc:oceanbase://localhost:2883/db");
ds.addDataSourceProperty("user", "root");
ds.addDataSourceProperty("password", "OBClient");
ds.setAutoCommit(false);


以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)