Grah definiran XML-om u proljetnom pokretanju

1. Uvod

Prije Proljeća 3.0, XML je bio jedini način definiranja i konfiguriranja graha. Predstavljeno proljeće 3.0 JavaConfig, omogućujući nam da konfiguriramo grah pomoću Java klasa. Međutim, XML konfiguracijske datoteke koriste se i danas.

U ovom uputstvu ćemo razgovarati kako integrirati XML konfiguracije u Spring Boot.

2. The @ImportResource Bilješka

The @ImportResource napomena nam omogućuje uvoz jednog ili više resursa koji sadrže definicije graha.

Recimo da imamo a grah.xml datoteka s definicijom graha:

Možemo ga koristiti u aplikaciji Spring Boot koristiti @ImportResource bilješka, govoreći mu gdje pronaći konfiguracijsku datoteku:

@Configuration @ImportResource ("classpath: beans.xml") javna klasa SpringBootXmlApplication implementira CommandLineRunner {@Autowired private Pojo pojo; javna statička void glavna (String [] args) {SpringApplication.run (SpringBootXmlApplication.class, args); }}

U ovom slučaju, Pojo Primjerice, ubrizgat će se grah definiran u grah.xml.

3. Pristup svojstvima u XML konfiguracijama

Što je s korištenjem svojstava u XML konfiguracijskim datotekama? Recimo da želimo koristiti svojstvo prijavljeno u našem primjena.svojstva datoteka:

sample = string učitan iz svojstava!

Ažurirajmo Pojo definicija, u grah.xml, uključiti uzorak svojstvo:

Dalje, provjerimo je li svojstvo pravilno uključeno:

@RunWith (SpringRunner.class) @SpringBootTest (classes = SpringBootXmlApplication.class) javna klasa SpringBootXmlApplicationIntegrationTest {@Autowired private Pojo pojo; @Value ("$ {sample}") uzorak privatnog niza; @Test public void whenCallingGetter_thenPrintingProperty () {assertThat (pojo.getField ()) .isNotBlank () .isEqualTo (sample); }}

Nažalost, ovaj test neće uspjeti jer, prema zadanim postavkama XML konfiguracijska datoteka ne može razriješiti rezervirana mjesta. Međutim, to možemo riješiti uključivanjem @EnableAutoConfiguration napomena:

@Configuration @EnableAutoConfiguration @ImportResource ("classpath: beans.xml") javna klasa SpringBootXmlApplication implementira CommandLineRunner {// ...}

Ova bilješka omogućuje automatsku konfiguraciju i pokušava konfigurirati grah.

4. Preporučeni pristup

Možemo i dalje koristiti XML konfiguracijske datoteke. Ali možemo razmisliti i o premještanju svih konfiguracija u JavaConfig iz nekoliko razloga. Prvi, konfiguriranje graha u Javi sigurno je za tip, pa ćemo pogreške tipa uhvatiti u vrijeme sastavljanja. Također, XML konfiguracija može postati prilično velika, što otežava održavanje.

5. Zaključak

U ovom smo članku vidjeli kako koristiti XML konfiguracijske datoteke za definiranje graha u aplikaciji Spring Boot. Kao i uvijek, izvorni kod primjera koji smo koristili dostupan je na GitHubu.


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