2017-02-09 6 views
0

上のファイル:だから、私のように値にアクセスしてい更新値は、私は以下のような構成をしたランタイム

cache.time.milliseconds=1000 

@Configuration 
public class PropertyConfiguration { 

    @Bean 
    @Profile("local") 
    public static PropertyPlaceholderConfigurer propertyPlaceholderConfigurer() { 
     PropertyPlaceholderConfigurer configurer = new PropertyPlaceholderConfigurer(); 
     configurer.setLocation(new FileSystemResource("path/to/resources/app-local.properties")); 
     configurer.setIgnoreUnresolvablePlaceholders(true); 
     return configurer; 
    } 
} 

app-local.propertiesファイルには、などの値が含まれています

@Value("${cache.time.milliseconds}") 
    private long cachingTime; 

私は正しい値を得ています。今

System.out.println(cachingTime); 

、私はいくつかの他の値にcachingTimeを更新し、その更新された値を提供したいです。たとえば、1000から99です。

実行時にこのプロパティ値を更新する方法はありますか?

また、アプリケーションやサーバーの再起動を除いてこの値を更新する方法はありますか?

私はSpring Boot 1.4.3.RELEASEを使用しています。

私はGoogleにそれを試みましたが、答えのどれも私に解決策を与えませんでした。 :(

は、任意の助けてくれてありがとう。

答えて

0

再デプロイしたくない場合は、サーバが起動しながら、すべての設定が行われているので、それは実行時には影響しませんプロパティファイルに値を変更する場合はコードベースを使用してプロパティファイルの値を変更し、サーバーを再起動するだけです。

+0

私はそれを知っている...しかし、私の要件は、私は、サーバーやアプリケーションを再起動すべきではないです。 :) –

+0

他に選択肢はありません –

0

spring-boot adminを一度見ることができますが、それは監視サーバーとして機能しますが、および環境変数

http://codecentric.github.io/spring-boot-admin/1.5.3/

スクリーンショットを添付すると、コーデックの仲間が概念の証明をします。

enter image description here

関連する問題