jfinal3.2+中的sql管理,能否对namespace进行嵌套支持

确实有一个需要嵌套的场景:sql包下面用于业务模块,sqltest包用于自动化测试前的数据初始化sql,本意是想在测试sql中增加前缀test,再按模块进行拆分。波总给出的方式虽然能解决,但是需要在每一个key前面带上模块的编码,下面开发人员有些抵触。能不能将namespace嵌套给支持了?

评论区

冰雨

2017-09-13 08:16

关于嵌套,感觉就是简单的问题复杂化了,套的层级多了,就更乱了,namespace采用包名的方式很直观,层次比较清晰,或者干脆按实际需要将sql拆成多个文件,写个方法,自动扫描加载!

JFinal

2017-09-14 00:06

可以将 namespace 指令改造成一个自己的 MyNameSpaceDire,让其支持多层就好,实现起来大致就是判断一下当前 namespace 指令上层是否还有 namespace,如果在的话,就让值相加一下

最后用自己的实际来代替官方实现:
1:arp.getEngine().removeDirective("namespace"); 移除官方实现
2:arp.getEngine().addDirective("namespace", new MyNameSpaceDire()); 添加自己的实现

JFinal

2017-09-14 00:07

可以在俱乐部群里面 @ 一下我

JFinal

2017-09-14 00:07

实现起来极其容易

热门反馈

扫码入社