qq_41897817 2022-02-18 11:49 采纳率: 50%
浏览 214
已结题

使用nacos配置中心存放配置文件,更新配置文件后程序监听到更新事件,但程序加载的配置信息还是旧的

现在的需求是修改nacos上配置的数据源密码、用户名之类的,
想在程序不重启的情况下加载到配置文件的信息。

有老哥做过类似的吗?网上找的对不上需求

img

  • 写回答

2条回答 默认 最新

  • 在自我救赎中成长 2022-02-18 13:38
    关注

    写个配置类,就可以通过nacos上的配置动态修改数据源了

    @Configuration
    @RefreshScope
    @Data
    public class DruidConfiguration {
    
        @Value("${spring.datasource.druid.url}")
        private String url;
    
        @Value("${spring.datasource.druid.username}")
        private String username;
    
        @Value("${spring.datasource.druid.password}")
        private String password;
    
        @Value("${spring.datasource.druid.driver-class-name}")
        private String driverClassName;
    
        @Bean(name="datasource")
        @RefreshScope
        public DruidDataSource dataSource()
        {
            DruidDataSource datasource = new DruidDataSource();
            System.out.println(url);
            datasource.setUrl(this.url);
            datasource.setUsername(username);
            datasource.setPassword(password);
            datasource.setDriverClassName(driverClassName);
            return datasource;
        }
    }
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 3月2日
  • 已采纳回答 2月22日
  • 修改了问题 2月18日
  • 修改了问题 2月18日
  • 展开全部

悬赏问题

  • ¥15 同一个网口一个电脑连接有网,另一个电脑连接没网
  • ¥15 神经网络模型一直不能上GPU
  • ¥15 pyqt怎么把滑块和输入框相互绑定,求解决!
  • ¥20 wpf datagrid单元闪烁效果失灵
  • ¥15 券商软件上市公司信息获取问题
  • ¥100 ensp启动设备蓝屏,代码clock_watchdog_timeout
  • ¥15 Android studio AVD启动不了
  • ¥15 陆空双模式无人机怎么做
  • ¥15 想咨询点问题,与算法转换,负荷预测,数字孪生有关
  • ¥15 C#中的编译平台的区别影响