Springブート1.5.1プロジェクトで設定ファイルとしてYAMLをセットアップして使用しようとしています。スプリングブートYAML設定がすべての値を読み取っていません
私のYAMLファイルは次のようになります
hue:
user: cdKjsOQIRY8hqweAasdmx-WMsn
ip: "http://192.168.1.69"
scenes:
sunstatus:
enabled: true
id: 93yv8JekmAneCU9
group: 1
disable:
enabled: true
id: 93yv8JekmAneCU9
group: 6
それはhue.getUserを(読むために完全に正常に動作します)。しかし、hue.getScenes()は何らかの理由でnullを返します。色相コンフィグのための私のJavaコード次のようになります。
@Configuration
@ConfigurationProperties(prefix = "hue")
public class Hue {
private String user;
private String ip;
private Scenes scenes;
/*
* Getters and setters of course
*/
public class Scenes {
private Sunstatus sunstatus;
private Disable disable;
/*
* Getters and setters
*/
public class Sunstatus {
private boolean enabled;
private String id;
private String group;
/*
* Getters and setters
*/
}
public class Disable {
private boolean enabled;
private String id;
private String group;
/*
* Getters and setters
*/
}
}
}
私は両方hue.scenes.sunstatusの形式で、同様の接頭辞で、各クラスに注釈を付けるにも試してみた、scenes.sunstatusとただsunstatusだけでなく。
また、私は@Valueアノテーションを少しでも幸運なことなく使ってみました。
データをapplication.ymlまたは外部ファイルに保存すると同じ結果になります。常にgetUser()にしかアクセスできません。
私はここで間違っていますか?
私はあなたの代わりに@NestedConfigurationProperty
を追加する必要がありますので、あなたは、ネストされたコンフィギュレーションのための公共の非内部クラスを使用している参照
ヒントをいただきありがとうございますが、それに切り替えても、私はまったく同じ問題を抱えています。 –
参照状態のようにクラスを静的に静的にしようとしましたが、正しいgetters/setterを追加しましたか? –
もう一度やり直してみましたが、まだヌルです。 –