資料來源(DataSource)
多重資料來源連線
JDBC持久化模組預設支援多重資料來源配置,以下透過簡單的配置來展示如何連接多個資料庫:
# 定义两个数据源分别用于连接MySQL和Oracle数据库,同时指定默认数据源为default(即MySQL数据库) ymp.configs.persistence.jdbc.ds_default_name=default ymp.configs.persistence.jdbc.ds_name_list=default|oracledb # 连接到MySQL数据库的数据源配置 ymp.configs.persistence.jdbc.ds.default.connection_url=jdbc:mysql://localhost:3306/mydb ymp.configs.persistence.jdbc.ds.default.username=root ymp.configs.persistence.jdbc.ds.default.password=123456 # 连接到Oracle数据库的数据源配置 ymp.configs.persistence.jdbc.ds.oracledb.connection_url=jdbc:oracle:thin:@localhost:1521:ORCL ymp.configs.persistence.jdbc.ds.oracledb.username=ORCL ymp.configs.persistence.jdbc.ds.oracledb.password=123456
從上述配置中可以看出,配置不同的資料來源時只需要定義資料來源名稱列表,再根據列表逐一配置即可;
連接池配置
JDBC持久化模組提供的資料來源類型如下:
default:預設資料來源適配器,透過DriverManager直接連接資料庫,建議僅用於測試;c3p0:基於C3P0連接池的資料來源適配器;dbcp:基於DBCP連接池的資料來源適配器;jndi:基於JNDI的資料來源適配器;
只需根據實際情況調整對應資料來源名稱的配置,如:
ymp.configs.persistence.jdbc.ds.default.adapter_class=dbcp#########針對於dbcp和c3p0連線池的配置檔案及內容,請將對應的dbcp.properties或c3p0.properties檔案放置在工程的classpath根路徑下,設定內容請參考JDBC持久化模組開源工程中的範例檔案;#######當然,也可以透過IDataSourceAdapter介面自行實現,框架針對IDataSourceAdapter介面提供了一個抽象封裝AbstractDataSourceAdapter類,直接繼承即可;############資料庫連接持有者(IConnectionHolder)#######使用於記錄真正的資料庫連線物件(Connection)原始的狀態及與資料來源對應關係;######