codecamp

数据源(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)原始的状态及与数据源对应关系;

JDBC持久化概述及模块配置
数据实体(Entity)
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }