jfinal多数据源ActiveRecordPlugin
因为项目需要从多个数据库取数据,所以需要配置多个数据源
尝试了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类似,可以参考一下。
转载于:https://www.cnblogs.com/learningJAVA/p/7490175.html
jfinal多数据源ActiveRecordPlugin相关推荐
- jfinal 多数据源配置
1.一个mysql,一个oracle public void configPlugin(Plugins me) { // 配置C3p0数据库连接池插件 C3p0 ...
- JFinal 表自动绑定插件实现,实现零配置,支持多数据源
2019独角兽企业重金招聘Python工程师标准>>> 以mysql数据库实现为例,其它的db也可基于这种方式自己实现 大概的思路是这样的,为了简少配置,所以不使用注解的方式 首先需 ...
- Spring中集成ActiveRecordPlugin数据操作插件
2019独角兽企业重金招聘Python工程师标准>>> ###Spring集成ActiveRecordPlugin数据操作插件 package com.yunhetong.mq.se ...
- 第一个jfinal的样例
1.创建Dynamic Web Project; 2.导入需要的jar包: 3.创建包: 4.配置web.xml: 5.编写web.xml中的com.jfinal.config.Myconfig,该类 ...
- jfinal mysql增删改查_Jfinal简单实现增删改查
最近学习了jfinal框架.就我感觉而言,我用起来的感觉真是很爽,以前在学习其他的框架的时候,实现增删改查的时候,你需要自己手动书写你的sql语句来与数据库进行数据交互,还要创建一个实例,然后实现它的 ...
- Jfinal源码解析系列一
2019独角兽企业重金招聘Python工程师标准>>> 1 Jfinal的初始化入口 <filter><filter-name>jfinal</filt ...
- 快速上手JFinal
JFinal是国产的MVC框架,由 Handler.Interceptor.Controller.Render.Plugin 五大部分组成.本文通过一个例子上手JFinal,旨在熟悉JFinal中各组 ...
- jfinal框架之登录注册
登录注册的实现流程 本节课,讲的是如何用jfinal实现简单的登录注册模块.先说一下,我这里的bug,同一个用户同密码可以注册多次,就是数据库会出现多条主键userid不同,但账号密码相同的记录:正常 ...
- jfinal框架教程
jfinal框架教程 下面通过一个小例子了解jfinal的结构和特点 1.建数据库(我用的是oracle数据库,其他的相对也差不多) -- Create table create table CLAS ...
最新文章
- shell脚本mysql_Shell脚本中执行sql语句操作MySQL数据库的几个方法
- 深入理解操作系统内核架构(送书)!
- 关于协方差矩阵需要注意的一个事项
- python的类方法_python 类不实例化,调用类方法:@staticmethod 和 @classmethod
- ad敷铜后还有部分飞线_网友自制LPL赛区AD选手排名图!阿水Lwx荣誉值已超越Uzi_电竞...
- 无法将输入值传递给JavaScript变量
- pat09-散列3. Hashing - Hard Version (30)
- mysql 存储过程发邮件_通过sql存储过程发送邮件的方法
- 企业如何确定需要什么样的产品经理
- MySQL优化三之MySQL配置
- CoppeliaSim(V-rep)手册中文翻译
- 《罗兰小语》最全UMD+TXT版(来自EXE版的反编译)
- matlab自动识别粗大误差,剔除粗大误差
- 十字线阵---CBF,传统波束形成
- 大学计算机学术活动,计算机学院学术活动公告---南京理工大学Wai-Tat Fu教授学术报告...
- 交换机putty怎么调试_debian10使用putty配置交换机console口
- VJ框架 与 人脸检测/物体检测 详解
- AUTOSAR_SWS_SecureOnboardCommunication(7)-功能规格 -1
- 盘点2020年网红品牌营销案例,它们刷屏凭什么?
- C语言中字符数组char[] 和 字符串char*的区别