主题:beetsql与disconf集成,BeetlSqlScannerConfigurer优先执行的问题

baggio 2018年05月10日 43

环境:sprintboot + disconf +beetl,其中引入的 beetl-2.8.1.jar、beetlsql-2.10.21.jar

BeetlSqlScannerConfigurer 在 disconf 文件下载前就开始扫描包,datasource 取不到 url、username、password等参数,有没有比较好的解决方法?

附代码片段

361A6455-2A1F-44b3-BA7E-3C3C4BDE3ACD.png

闲大赋 2018年05月10日

disconf 是什么,能给一个链接不?看你代码片段,你的意思Evviroment都还没有读取到配置信息就执行了?

或者有没有一个简单的git工程发给我,我看看怎么回事情。你是自己写的·集成还是用的

<dependency>
    <groupId>com.ibeetl</groupId>
    <artifactId>beetl-framework-starter</artifactId>
    <version>1.1.48.RELEASE</version>
</dependency>

baggio 2018年05月11日

我的服务依赖的 ibeetl,现象确实是 Environment 还没有读取到配置信息 就执行dataSource初始化了

76E50033-4E6E-4b76-B479-815F9FF8CFAF.png


disconf (分布式配置管理平台)文档:http://disconf.readthedocs.io/zh_CN/latest/

springboot服务启动时自动把配置文件 db.properties 从 disconf(远程)下载到本地服务的 classpath中,这样可以避免服务部署多个环境时  每次都修改 db参数。


现在的问题是:启动时,db.properties 还未从 disconf 上下载到本地,BeetlSqlScannerConfigurer 就已经开始扫描 dao包 初始化数据库

请问 闲大有什么好的建议可以规避这个问题,或者延迟扫描Dao包、延迟初始化数据库?

baggio 2018年05月11日

image.png

闲大,除了这个问题外,还有一个优化建议,SqlManager 的 template(T t, long start, long size)查询,能不能加上 orderBy传参,在 T t 的class类通过 @TableTemplate("order by id desc") 声明排序后, 就不能再自定义排序了

  • 闲大赋 :这个功能加上了,等待发布ing(8天前)