私はtypesafe configurationのための私の春のブートアプリケーション内のクラスがあります。その後、私は注釈と私の豆のフィールドでそれを使用しようなぜ@ConfigurationPropertiesクラスのデフォルト値が機能しないのですか?
@Component
@ConfigurationProperties(prefix = "props")
@Getter
@Setter
public class Properties {
private String param1 = "val1";
private String param2 = "val2";
}
:@Value("${props.param1}")
をしかし、私はまで、アプリケーションの起動時に、次の例外を取得java.lang.IllegalArgumentExceptionが:私はapplication.properties
によって引き起こさ
で私のカスタムプロパティの値を指定 プレースホルダ「小道具を解決できませんでした。文字列値でのparam1' 『$ {props.param1}』
application.properties
に値を指定せずにデフォルト値を使用するように春のブートアプリケーションを作成する方法は?
application.properties
にプロパティを入力し、spring-configuration-metadata.json
ファイル内にdefaultValue
がある場合、IDEのデフォルト値が表示されます。私はこのデフォルト値は、私のpropertisファイルで私はそれをoveerideまで春と撮影すると思いますが、私は上記の例外を取得する理由は分かりません。
「Properties」コンポーネントはどのくらい正確に使いましたか? '@ Value'や' @ Autowired'を使う? –
@AliDehghani私は@Valueを使用しました。) – Derp
@AliDehghani私はそれを設定しようとしましたが、私のメインクラスには設定されていませんでした - 違いはありません – Derp