V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
rizon
V2EX  ›  程序员

spring 中 @value 注解的属性可以通过配置中心更新吗

  •  
  •   rizon ·
    othorizon · Feb 18, 2019 via iPhone · 4959 views
    This topic created in 2634 days ago, the information mentioned may be changed or developed.
    我知道的是用 @configurationproperties 注解的类,在配置中心下发新的配置的时候,可以不重启服务器直接更新。
    但是不记得 @value 注解的可以吗?
    11 replies    2019-02-18 21:33:20 +08:00
    rizon
        1
    rizon  
    OP
       Feb 18, 2019 via iPhone
    刚才查了下资料,应该是可以的吧?
    Loofer
        2
    Loofer  
       Feb 18, 2019
    你需要了解 Spring Cloud Config 原理
    DesertCamel
        3
    DesertCamel  
       Feb 18, 2019 via Android
    可以啊,spring cloud 中的配置中心意义就是这样。配置 mq 作为消息总线。
    jc4myself
        4
    jc4myself  
       Feb 18, 2019
    很简单的。 @RefreshScope 了解一下
    rockyou12
        5
    rockyou12  
       Feb 18, 2019
    携程那个 apollo 也可以的,而且不需要配置 mq 就能刷新。不过用法好像稍微有点不同
    deeplee
        6
    deeplee  
       Feb 18, 2019
    可以的,@RefreshScope
    rayingecho
        7
    rayingecho  
       Feb 18, 2019
    可以但是尽量避免这么用
    @Value 的值需要给 Bean 标注 @RefreshScope 来更新, 背后的实现是给对象加了一层代理, 每当配置发生更新时将旧的对象销毁后重建一个新对象, 副作用很大
    假如是一个仅仅用来存储配置值的对象, 那应该用 @ConfigurationProperties
    rizon
        8
    rizon  
    OP
       Feb 18, 2019
    @rayingecho #7 嗯嗯,使用 @ConfigurationProperties 就不需要加 @RefreshScope 了吗?
    rayingecho
        9
    rayingecho  
       Feb 18, 2019
    @rizon 是的
    rizon
        10
    rizon  
    OP
       Feb 18, 2019
    @rayingecho #9 好的 谢谢哈
    xuxueli
        11
    xuxueli  
       Feb 18, 2019 via Android
    http://www.xuxueli.com/xxl-conf/

    动态推送更新,实时生效
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   1170 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 53ms · UTC 23:08 · PVG 07:08 · LAX 16:08 · JFK 19:08
    ♥ Do have faith in what you're doing.