2018-02-07 15:03
@188085240 获取 sql 之前切换了数据源,表明你是多数据源情况
所以在 addSqlTemplate 也要相应的使用对应的数据源:
arp1.addSqlTemplate(...);
arp2.addSqlTemplate(...);
arp3.addSqlTemplate(...);
上面的 arp1 arp2 arp3 分别对应了各自的数据源: ds1 ds2 ds3,在使用的时候:
Db.use("ds1").getSql(key) 即可
2018-02-07 14:43
@188085240 异常已经很清楚,不是在 addSqlTemplate 的时候出异常,而是在使用 find(sql) 方法时出现 sql 为 null,这种问题通过单步调试极度容易解决
2018-02-07 14:42
@188085240 刚看错了,你在构造方法中初始化了 sqlBuilder,所以前面那个异常不会抛出来
代码看上去是没问题的,从异常上看是你在使用 DbPro.find(sql) 这个方法的 sql 为 null ,单步调试秒秒钟解决问题,不要靠猜
这个问题与是否添加多个 addSqlTemplate 没有关系,添加多个才是正常的姿势
2018-02-07 11:58
@陈伟 jfinal 3.4 已经处理过, 这个问题本质不是 jfinal 要解决的,报出这个异常是正确的
2018-02-07 11:42
@jimmyyn 用 shiro 升到 jfinal 3.2 是没有问题的
一般来说升级 jfinal 到新版本,都是改改类名、方法名就可以了。 有朋友曾经跨越 9 个 jfinal 版本来升级也很容易