zoukankan      html  css  js  c++  java
  • Spring boot 应用实现动态刷新配置

    1. 依赖

    需要引入下面三个依赖:

    compile('org.springframework.cloud:spring-cloud-starter-config')
    compile('org.springframework.boot:spring-boot-starter-actuator')
    compile('org.springframework.boot:spring-boot-starter-web')

    (1)spring-cloud-starter-config是为了实现刷新配置
    (2)spring-boot-starter-actuator是为了暴露修改/刷新配置的接口
    (3)spring-boot-starter-web是为了可以访问暴露的修改/刷新配置的接口

    2. 配置暴露接口

    application.properties

    #使用端口9999
    server.port=9999
    #暴露接口
    management.endpoints.web.exposure.include=env,refresh

    (1)env接口,可以获取配置(GET),也可以修改配置(POST)
    (2)refresh接口,可以刷新配置(POST),使得@RefreshScope标注的value可以重新注入。

    3. @RefreshScope

    在需要实时刷新配置的地方加上@RefreshScope注解

    4. 启动服务

    5. 修改配置

    访问localhost:9999/actuator/env(GET),可以获得此时的配置
    访问localhost:9999/actuator/env(POST)

    {
        "name":"somekey",
        "value":"newvalue"
    }

    如上可以把配置中somekey对应的值改为newvalue

    6. 获取配置值

    不调用刷新接口,直接获取注入的配置值,发现还是旧的值

    7. 刷新配置 重新获取

    访问localhost:9999/actuator/refresh(POST)刷新配置
    重新获取注入的配置值,发现是新的值

  • 相关阅读:
    QTP知识总结(一)
    QTP中DataTable操作大全
    QTP DataTable全攻略(1)
    QTP脚本不能录制怎么办?
    每天一个linux命令(20):find命令之exec
    bash下几个替换运算符的区分
    linux_shell 特殊符号的介绍
    Linux dirname、basename 指令
    Liunx readlink命令
    微信公众账号开发教程(四)自定义菜单(转)
  • 原文地址:https://www.cnblogs.com/rinack/p/14037954.html
Copyright © 2011-2022 走看看