1
回答
JFinal 非web项目多数据源 arp报错 Config already exists
华为云实践训练营,热门技术免费实践!>>>   

@JFinal 你好,想跟你请教个问题:


JFinal 非web项目多数据源 arp启动第二次的时候会报错 已经存在


C3p0Plugin c3p0Plugin = new C3p0Plugin();
c3p0Plugin.start();
ActiveRecordPlugin arp = new ActiveRecordPlugin(c3p0Plugin);
arp.start();


C3p0Plugin c3p0Plugin1 = new C3p0Plugin();
c3p0Plugin1.start();
ActiveRecordPlugin arp1 = new ActiveRecordPlugin(c3p0Plugin1);
arp1.start();



arp1.start();这里报错

Exception in thread "main" java.lang.IllegalArgumentException: Config already exists: main





举报
共有1个答案 最后回答: 1年前

      第一个 new ActiveRecordPlugin(c3p0Plugin),由于没有指定 configName,那么 jfinal 会为其指定默认值,而第二次 new ActiveRecordPlugin(c3p0Plugin),由于仍然没有指定 configName,那么 jfinal 仍然为其指定默认值时,发现configName已经存在了。

    解决办法极度简单,在第二次 new 的时候,第一个参数给传个 configName 进去。

--- 共有 2 条评论 ---
JFinal回复 @本人纯属虚构 : 在做 ActiveRecordPlugin 的多数据源支持功能的时候,一开始是强制要填写configName的,为了兼容老版本,在未填写configName时 jfinal 会给一个默认值,但默认值不能给两次,否则就重复了 1年前 回复
本人纯属虚构感谢波总百忙之中抽空回复! 1年前 回复
顶部