相关疑难解决方法(0)

@RefreshScope无法正常工作 - Spring Boot

我遵循这里描述的方法:https://github.com/jeroenbellen/blog-manage-and-reload-spring-properties,唯一的区别是在我的情况下,属性被用于多个类,所以我有将它们全部放在一个实用程序类中CloudConfig,我使用getter引用它的变量.这就是这个类的样子:

@Configuration
@RefreshScope
public class CloudConfig {

    static volatile int count; // 20 sec

    @Value("${config.count}")
    public void setCount(int count) {
        this.count = count;
    }

    public static int getCount() {
        return count;
    }

}
Run Code Online (Sandbox Code Playgroud)

count在其他类中使用变量CloudConfig.getCount().我能够在启动时加载属性,但我无法动态更新它们.谁能说出我做错了什么?如果不是制作这个配置类,我完全按照教程描述的一切正常工作但我无法适应我的用例.任何人都可以告诉我缺少什么吗?

spring-boot spring-cloud spring-cloud-config

4
推荐指数
1
解决办法
2万
查看次数

Spring boot Config客户端:刷新不起作用

无法使用“ http://localhost:9001/refresh ”刷新配置文件。如果我重新启动客户端应用程序,更新的配置加载良好。以下是我用来测试相同的简单休息控制器。刷新是使用 curl 命令“curl -d {} localhost:9001/refresh/”运行的,它给出了 404 错误。

@RestController
@RefreshScope
class ExampleController {

    @Value("${Message2}")
    private String message2 = "Hello World";

    @RequestMapping
    public String sayValue() {
        return message2;
    }
}
Run Code Online (Sandbox Code Playgroud)

以下是我正在使用的 pom.xml

<groupId></groupId>
<artifactId>MyConfigurationClient</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging>

<name>MyConfigurationServer</name>
<description>Demo project for Spring Boot</description>

<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>2.0.0.RELEASE</version>
    <relativePath/> <!-- lookup parent from repository -->
</parent>

<properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
    <java.version>1.8</java.version>
    <spring-cloud.version>Finchley.M8</spring-cloud.version>
</properties>

<dependencies>
    <dependency>
        <groupId>org.springframework.cloud</groupId>
        <artifactId>spring-cloud-config-server</artifactId>
    </dependency>

    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-test</artifactId>
        <scope>test</scope>
    </dependency>
</dependencies>

<dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-dependencies</artifactId>
            <version>${spring-cloud.version}</version>
            <type>pom</type>
            <scope>import</scope> …
Run Code Online (Sandbox Code Playgroud)

configuration centralized spring-boot

2
推荐指数
1
解决办法
5469
查看次数