34

PropertyPlaceholderConfigurator で spring 3 を使用しています。

私のプロパティコードは次のようになります。

@Configuration
public class MyProps {

    @Value("${prop1}")
    public String prop1;

    ...
}

.properties ファイルに prop1 がない場合、スプリングはコンテキストの初期化に失敗します。

問題は、このプロパティが必須ではないことをどのように定義できるかです。いくつかの注釈、構成?

4

3 に答える 3

66

デフォルト値を使用できます。

@Value("${prop1:}")
public String prop1;

プロパティが定義されていない場合、Spring は空の文字列を挿入します。構文は${property:defaultValue}.

于 2012-08-02T08:05:17.997 に答える
11

単一のプロパティをオプションにすることが可能かどうかはわかりませんが、プロパティプレースホルダーに未解決のプロパティを無視させることはできます。

<context:property-placeholder ignore-unresolvable="true" ... />
于 2012-08-02T07:55:57.340 に答える