2016-08-31 7 views
0

@Scheduledメソッドが存在する場合は値を、それ以外の場合はデフォルト値をパラメータ化する必要があります。デフォルト値でSpring @ Scheduledをパラメータ化する

私たちは次のようにコンフィギュレーションファイルのプロパティからパラメータ化することができます

@Scheduled(cron = "${my.task.cron-exec-expr}") 
public void scheduledTask() { 
    // do something 
} 

が、プロパティが存在しない場合、我々は実行時例外があるでしょう。

ノー成功を収めて、デフォルト値で@ConfigurationProperties Beanを使用して試してみた:

@Component 
@ConfigurationProperties(prefix = "my.task") 
public class MyTaskProperties { 

    private String cronExecExpr = "*/5 * * * * *"; 

    // getter and setter 
} 

ことを回避し、デフォルト値を渡す方法は?

答えて

2

次のようなプレースホルダにデフォルト値を追加することができます。

@Scheduled(cron = "${my.task.cron-exec-expr:*/5 * * * * *}") 
+0

クール!ありがとうございました。 – s1moner3d

関連する問題