Korištenje Spring @Value sa zadanim postavkama
1. Pregled
Proljetni @Vrijednost napomena pruža prikladan način ubrizgavanja vrijednosti svojstava u komponente. Također je vrlo korisno osigurati razumne zadane vrijednosti za slučajeve u kojima imovina možda nije prisutna.
Na to ćemo se usredotočiti u ovom članku - kako odrediti zadanu vrijednost za @Vrijednost Proljetna bilješka. Za detaljniji brzi vodič o @Vrijednost, pogledajte članak ovdje.
2. Zadane vrijednosti niza
Pogledajmo osnovnu sintaksu za postavljanje zadane vrijednosti za Niz svojstvo:
@Value ("$ {some.key: moja zadana vrijednost}") private String stringWithDefaultValue;
Ako neki.ključ onda se ne može riješiti nizWithDefaultValue bit će postavljena na zadanu vrijednost “moja zadana vrijednost ".
Slično tome, možemo postaviti nultu duljinu Niz kao zadana vrijednost:
@Value ("$ {some.key:})" privatni niz stringWithBlankDefaultValue;
3. Primitivci
Da biste postavili zadanu vrijednost za primitivne tipove poput boolean i int, koristimo doslovnu vrijednost:
@Value ("$ {some.key: true}") privatni boolean booleanWithDefaultValue;
@Value ("$ {some.key: 42}") private int intWithDefaultValue;
Ako bismo htjeli, umjesto toga bismo mogli koristiti primitivne omote mijenjanjem vrsta u Booleova i Cijeli broj.
4. Nizovi
U niz također možemo ubaciti popis vrijednosti odvojenih zarezom:
@Value ("$ {some.key: one, two, three}") private String [] stringArrayWithDefaults; @Value ("$ {some.key: 1,2,3}") private int [] intArrayWithDefaults;
U prvom primjeru gore vrijednosti "jedan", “dva", i “tri" se ubrizgavaju kao zadane vrijednosti u stringArrayWithDefaults.
U drugom primjeru vrijednosti 1, 2 i 3 ubrizgavaju se kao zadane vrijednosti u intArrayWithDefaults.
5. Korištenje SpEL-a
Također možemo koristiti Spring Expression Language (SpEL) da odredimo izraz i zadane vrijednosti.
U primjeru u nastavku očekujemo neki.sustav.ključ da se postavi kao svojstvo sustava, a ako nije postavljeno, želimo koristiti “moja zadana vrijednost svojstva sustava " kao zadani:
@Value ("# {systemProperties ['some.key']?: 'Moja zadana vrijednost svojstva sustava'}") private String spelWithDefaultValue;
6. Zaključak
U ovom kratkom članku pogledali smo kako možemo postaviti zadanu vrijednost za svojstvo čiju bismo vrijednost željeli ubrizgati pomoću Spring-a @Vrijednost bilješka.
Kao i obično, svi uzorci koda korišteni u ovom članku mogu se naći u projektu GitHub.