Ako definovať mapu v YAML pre POJO?

Java Top

Práve som oznámil nové Naučte sa jar kurz zameraný na základy jari 5 a Spring Boot 2:

>> SKONTROLUJTE KURZ

1. Prehľad

V tomto výučbe sa dozvieme, ako môžeme pomocou vlastností definovaných v súbore YAML konfigurovať hodnoty pre a Mapa v našich triedach POJO.

2. POJO a YAML

Triedy POJO sú obyčajné staré objekty Java. YAML je človekom čitateľný formát štruktúrovaných údajov, ktorý používa odsadenie na označenie vnorenia.

2.1. Jednoduché Mapa Príklad

Predstavme si, že prevádzkujeme online obchod a vytvárame službu, ktorá prekladá veľkosti oblečenia. Spočiatku predávame oblečenie iba vo Veľkej Británii. Chceme vedieť, na čo sa vo Veľkej Británii vzťahuje označenie „S“, „M“, „L“ atď. Vytvárame našu konfiguračnú triedu POJO:

@ConfigurationProperties (prefix = "veľkosť trička") verejná trieda TshirtSizeConfig {súkromná mapa simpleMapping; public TshirtSizeConfig (mapa simpleMapping) {this.simpleMapping = simpleMapping; } // zakladatelia a zakladatelia ..} 

Všimnite si @ConfigurationProperties s predpona hodnotu. Naše mapovanie definujeme pod rovnakou koreňovou hodnotou v našom súbore YAML, ako vidíme v nasledujúcej časti.

Musíme tiež nezabudnúť povoliť vlastnosti konfigurácie s nasledujúcou anotáciou k našej Application.class:

@EnableConfigurationProperties (TshirtSizeConfig.class) verejná trieda DemoApplication {public static void main (String [] args) {SpringApplication.run (DemoApplication.class, args); }}

2.2. Konfigurácia YAML

Teraz pridáme veľkosť trička na našu konfiguráciu YAML.

Môžeme použiť nasledujúcu štruktúru v našom aplikácia.yml spis:

veľkosť trička: jednoduché mapovanie: XS: 6 S: 8 M: 10 L: 12 XL: 14

Všimnite si odsadenie a medzery. YAML používa na označenie vnorenia odsadenie. Odporúčaná syntax je dva medzery pre každú vnorenú úroveň.

Všimnite si, ako používame jednoduché mapovanie s pomlčkou, ale volá sa názov našej vlastnosti v našej triede simpleMapping. Vlastnosti YAML s pomlčkami sa automaticky preložia do ekvivalentu veľkého písmena v kóde.

2.3. Viac komplexné Mapa Príklad

Po našich úspešných obchodoch v Spojenom kráľovstve musíme teraz zvážiť prevod veľkostí na merania v iných krajinách. Napríklad by sme teraz chceli vedieť, akú veľkosť má vo Francúzsku a USA označenie „S“. Musíme do našej konfigurácie pridať ďalšiu vrstvu údajov.

Môžeme zmeniť svoje aplikácia.yml so zložitejším mapovaním:

veľkosť trička: komplexné mapovanie: XS: uk: 6 fr: 34 nás: 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 

Zodpovedajúcim poľom v našom POJO bude mapa máp:

súkromná mapa complexMapping;

3. Záver

V tomto článku sme videli, ako môžeme definovať jednoduché a zložitejšie vnorené mapy v konfiguračnom súbore YAML pre jednoduchý POJO.

Kód tohto článku je k dispozícii na GitHub

Java dole

Práve som oznámil nové Naučte sa jar kurz zameraný na základy jari 5 a Spring Boot 2:

>> SKONTROLUJTE KURZ

$config[zx-auto] not found$config[zx-overlay] not found