如何在YAML中為POJO中Map配置資料? | Baeldung
介紹如何使用YAML檔案中定義的屬性為POJO類中Map物件配置值資料。
POJO類是普通的舊Java物件。YAML是一種人類可讀的結構化資料格式,它使用縮排來指示巢狀。
假設我們正在運營一個線上商店,並且正在建立一個可以有服裝尺寸的服務。首先,“ S”,“ M”,“ L”等標籤所指的英國尺寸。建立POJO配置類:
@ConfigurationProperties(prefix = "t-shirt-size") public class TshirtSizeConfig { private Map<String, Integer> simpleMapping; public TshirtSizeConfig(Map<String, Integer> simpleMapping) { this.simpleMapping = simpleMapping; } //getters and setters.. } |
注意帶有字首值的@ConfigurationProperties。我們將在YAML檔案中的相同根值下定義對映。
還需要記住在Application.class上啟用帶有以下注釋的配置屬性:
@EnableConfigurationProperties(TshirtSizeConfig.class) public class DemoApplication { public static void main(String[] args) { SpringApplication.run(DemoApplication.class, args); } } |
現在,我們新增t-shirt-size到我們的YAML配置。在application.yml檔案中使用以下結構:
t-shirt-size: simple-mapping: XS: 6 S: 8 M: 10 L: 12 XL: 14 |
注意縮排和空格。YAML使用縮排來表示巢狀。對於每個巢狀級別,建議的語法是兩個空格。
請注意,我們使用的是simple-mapping帶有破折號,但我們在類中的屬性名稱稱為simpleMapping。帶有破折號的YAML屬性將自動轉換為等效的駝峰式程式碼。
使用更復雜的Map來更改application.yml:
t-shirt-size: complex-mapping: XS: uk: 6 fr: 34 us: 2 S: uk: 8 fr: 36 us: 4 M: uk: 10 fr: 38 us: 6 L: uk: 12 fr: 40 us: 8 XL: uk: 14 fr: 42 us: 10 |
的POJO中的相應欄位將是Map中Map:
private Map<String, Map<String, Integer>> complexMapping; |
在GitHub上獲得本文的程式碼
相關文章
- 如何在SpringBoot中設定TLS? |BaeldungSpring BootTLS
- 如何在Java 8中將List轉換為Map?Java
- Spring YAML與屬性檔案配置檔案對比 | BaeldungSpringYAML
- Python讀取YAML配置資料PythonYAML
- 在Docker中能使用資料庫嗎? | BaeldungDocker資料庫
- 在Spring Batch中配置重試邏輯 - BaeldungSpringBAT
- go中map的資料結構理解Go資料結構
- 如何在webstorm中配置lessWebORM
- 如何在Flutter中整合華為遠端配置服務Flutter
- yaml配置YAML
- 如何在 Elasticsearch 中配置 SSL / TLS ?ElasticsearchTLS
- 如何在weka中連線資料庫資料庫
- 如何在 PHP 中傳送 xml 資料作為請求內容PHPXML
- springboot中YAML使用二Spring BootYAML
- Java中將多個Map扁平化為單個MapJava
- 如何在react專案中配置ESlintReactEsLint
- 如何在 Linux 中配置 firewalld 規則Linux
- chan中傳遞map資料,傳遞的是引用
- React中兩種遍歷資料的方法(map、forEach)React
- 微服務中的Saga模式 - baeldung微服務模式
- Java中將 Map 轉換為 Spring MultiValueMapJavaSpring
- 【譯】如何在React Hooks中獲取資料?ReactHook
- 在Linux中,如何在Linux中安裝和配置KVM?Linux
- eclipse中的yaml外掛EclipseYAML
- 如何在React Native專案中整合華為遠端配置服務React Native
- 如何在Eclipse中配置安卓環境Eclipse安卓
- 如何在 VSCode 中配置和編寫 LINGOVSCodeGo
- 聊聊如何在docker環境中配置hostsDocker
- 如何在python中讀取配置檔案Python
- Intellij IDEA 通過資料庫生成 POJOIntelliJIdea資料庫POJO
- 如何在Hibernate/JPA中配置具有兩個連線池的兩個資料來源
- 如何在windows中安裝達夢資料庫?Windows資料庫
- 如何在因果推斷中更好地利用資料?
- 如何在FreeBSD 13中安裝MySQL資料庫MySql資料庫
- Spring Boot Reactor Netty配置 | BaeldungSpring BootReactNetty
- springboot專案中yaml檔案Spring BootYAML
- Yaml中特殊符號"| > |+ |-"的作用YAML符號
- 網站資料庫如何修改config.php,如何在網站配置檔案中修改資料庫連線資訊網站資料庫PHP