应用程序属性的更改不会影响 - Springboot

Changes in Application properties doesn't impact - Springboot

我正在使用 Spring 启动 2.5.4。我已经编写了网络应用程序。现在我面临 application.properties 文件变量的问题。如果我正在更改现有值,在代码中读取旧值,新定义的对象不会出现。

找到下面的 application.properties 文件

spring.datasource.url=jdbc:mysql://XXXXXXXXXXX:3306/test
spring.datasource.username=user
spring.datasource.password=XXXXXXXXXXXXXXXX
spring.datasource.driver-class-name = com.mysql.cj.jdbc.Driver

# Config Variables
ml.url=https://google.com/ml/entities
main.url=https://xxxx.com/staging/mainfile

和应用程序配置 java 文件

@Component
public class ApplicationConfig {
    
    @Value("${ml.url}")
    public String mlurl;

    @Value("${main.url}")
    public String mainurl;

   @PostConstruct
   public void initThat(){
      that = this;
    }
}

读取代码中的变量为

@RequestMapping("/readfile")
@RestController
public class AppointmentResource {

private static Logger S_LOGGER = LogManager.getLogger( AppointmentResource.class );

@Autowired
private ApplicationConfig applicationConfig;

@GetMapping(value = "/websiteUrl",produces = MediaType.APPLICATION_JSON_VALUE)
public String getProduct() {
    String websiteUrl = applicationConfig.mlurl;
    S_LOGGER.info("website url is " + websiteUrl);
    return websiteUrl;
}
}

经过几次编译。然后我将 ml.url 更改为 https://google.com/prod/entities/test

但在代码中我仍然得到 https://google.com/ml/entities

任何人都可以帮助从 application.properties

获取最新更改

我在这里被打动了。帮助

我修好了。它是从文件夹配置中挑选的。我为不同的环境创建的