因为项目需要从多个数据库取数据,所以需要配置多个数据源

尝试了ActiveRecordPlugin和DruidPlugin的多数据源,但是因为DruidPlugin在本地一直报错一个很奇怪的语法错误,所以就选用了ActiveRecordPlugin

总的来说就是多个数据源配置多个ActiveRecordPlugin

直接使用如下代码即可,不过因为我是太多的数据源不想一个个定义plugin,所以就选用循环读取文件的形式

int i=0;
while(true){
if(PropKit.get("jdbcUrl"+i)==null){
break;
}else{
C3p0Plugin cp = new C3p0Plugin(
PropKit.get("jdbcUrl"+i),
PropKit.get("user"+i),
PropKit.get("password"+i),
PropKit.get("driver"+i));
cp.setInitialPoolSize(3);
cp.setMaxIdleTime(10);
cp.setMinPoolSize(3);
cp.setMaxIdleTime(6);
me.add(cp); ActiveRecordPlugin arp = null;
if(i>0){
arp = new ActiveRecordPlugin("db"+i,cp);
}else{
arp = new ActiveRecordPlugin(cp);
}
// arp2.setDialect(new AnsiSqlDialect()); 连接 sql2008 特有的解决字符 问题
if(PropKit.get("driver"+i).indexOf("mysql")>-1){
arp.setDialect(new MysqlDialect());///mysql
} else{
arp.setDialect(new SqlServerDialect());///sqlserver
}
me.add(arp); //配置数据表映射写到一个文件中
if(PropKit.get("state"+i).indexOf("pro")>-1){
DbMappingKit.mapping(arp);
}else if(PropKit.get("state"+i).indexOf("fb")>-1){
FbMappingKit.mapping(arp);
}else if(PropKit.get("state"+i).indexOf("wx")>-1){
WxMappingKit.mapping(arp);
}else if(PropKit.get("state"+i).indexOf("center")>-1){
TaskCenterMappingKit.mapping(arp);
} }
i++;
}

其中

arp = new ActiveRecordPlugin("db"+i,cp);  是给除第一个以外的其他链接建立连接别名。
我们常用的DB.update(sql),默认使用么有别名的第一个数据源。 Db.use("db1").update(sql); 这样可以使用其他数据源 与http://jingyan.baidu.com/article/7f41ecec3b2b0e593d095c35.html类似,可以参考一下。

最新文章

  1. cloudera learning6:Hadoop Security
  2. Python【3】-字典dic和集合set
  3. 容器--IdentityHashMap
  4. WordPress FunCaptcha插件跨站脚本漏洞
  5. img图片元素下多余空白解决方案
  6. avalon2学习心得(1)
  7. Delphi与C++的语法区别(六点区别) good
  8. Servlet容器模型(四)ServletConfig、ServletContext
  9. ios系统视频播放器MPMoviePlayerController应用遇到的坑
  10. C++左值
  11. python接口自动化(十九)--Json 数据处理---实战(详解)
  12. IOS中armv7,armv7s,arm64以及i386和x86_64讲解
  13. python将文本转化成语音并播放
  14. 解码 id_token
  15. mac一些设置
  16. 用ASP.NET实现下载远程图片保存到本地的方法 保存抓取远程图片的方法
  17. java struts2入门学习---常用标签学习总结
  18. vue学习之五生命周期
  19. ELK高可用搭建---Elasticsearch配置(1)
  20. Opengl---gluLookAt函数详解(转)

热门文章

  1. MySql:局域网和权限用户管理
  2. web杂记-禁止输入框自动填充文字
  3. HBase性能优化方法总结
  4. Android 图片缩略图显示
  5. restful知识点之五解析器_响应器_分页器
  6. maven(13)-安装nexus私服
  7. Python套接字
  8. Mysql rpm安装
  9. javascript使用web proxy来实现ajax cross-domain通信
  10. leetcode Ch7-Graph Search