一、该问题的重现步骤是什么?
1. BladeX 2.8.2版本 是如何管理数据库连接的
2. Tool工程中的core-db模块的作用是什么
3. 现在想改造工程为nacos数据连接发生变化时自动重置数据库链接,不需要重新启动各个服务,该怎么操作
二、你期待的结果是什么?实际看到的又是什么?
数据库连接动态刷新,无需重启服务
必须重启服务新的数据库连接才会生效
三、你正在使用的是什么产品,什么版本?在什么操作系统上?
Bladex 2.8.2 商业办 windows/linux
四、请提供详细的错误堆栈信息,这很重要。
无
五、若有更多详细信息,请在下面提供。
如果写在配置文件里的数据库信息,是需要重启才能生效的。
如果你不想重启就生效,只能把数据源配置成动态数据源,可以用mybatis-plus官方的dynamic-datasouce。
配置好动态数据源后,写一个nacos监听器,有变更就会监听器收到并执行,在执行的逻辑代码块判断链接,并且更新dynamic-datasource的配置。
具体代码部分,你可以参考bladex的多租户数据库隔离的逻辑,就是线上配置好之后,就会加载成功对应的数据源,而不需要重启:https://center.javablade.com/blade/BladeX-Tool/src/branch/master/blade-starter-tenant/src/main/java/org/springblade/core/tenant/dynamic
扫一扫访问 Blade技术社区 移动端