Groovy Bean Definisjoner

1. Oversikt

I denne raske artikkelen vil vi fokusere på hvordan vi kan bruke en Groovy-basert konfigurasjon i våre Java Spring-prosjekter.

2. Avhengigheter

Før vi begynner, må vi legge til avhengighet til vår pom.xml fil. Vi må også legge til et plugin for å kompilere Groovy-filene våre.

La oss legge til avhengigheten av Groovy først til vår pom.xml fil:

 org.codehaus.groovy groovy 2.5.10 

La oss nå legge til pluginet:

  // ... org.codehaus.gmavenplus gmavenplus-plugin 1.9.0 addSources addTestSources generereStubs kompilere generereTestStubs kompilereTester fjerneStubber fjerneTestStubs 

Her bruker vi gmavenplus-plugin med alle målene.

De siste versjonene av disse bibliotekene finnes på Maven Central.

3. Definere bønner

Siden versjon 4 gir Spring støtte for Groovy-baserte konfigurasjoner. Dette betyr at Groovy-klasser kan være legitime vårbønner.

For å illustrere dette skal vi definere en bønne ved hjelp av standard Java-konfigurasjon, og så skal vi konfigurere den samme bønnen ved hjelp av Groovy. På denne måten kan vi se forskjellen.

La oss lage en enkel klasse med noen få egenskaper:

offentlig klasse JavaPersonBean {privat streng fornavn; privat streng etternavn; // standard getters og setters} 

Det er viktig å huske på getters / settere - de er avgjørende for at mekanismen skal fungere.

3.1. Java-konfigurasjon

Vi kan konfigurere den samme bønnen ved hjelp av en Java-basert konfigurasjon:

@Configuration public class JavaBeanConfig {@Bean public JavaPersonBean javaPerson () {JavaPersonBean jPerson = new JavaPersonBean (); jPerson.setFirstName ("John"); jPerson.setLastName ("Doe"); returnere jPerson; }}

3.2. Groovy-konfigurasjon

Nå kan vi se forskjellen når vi bruker Groovy til å konfigurere den tidligere opprettede bønnen:

bønner {javaPersonBean (JavaPersonBean) {firstName = 'John' lastName = 'Doe'}}

Merk at før vi definerer bønnekonfigurasjon, bør vi importere JavaPersonBean-klasse. Også, inne i bønner blokk, kan vi definere så mange bønner som vi trenger.

Vi definerte feltene våre som private og selv om Groovy får det til å se ut som om det får tilgang til dem direkte, det gjør det ved hjelp av gitt gitter / setter.

4. Ekstra bønneinnstillinger

Som med XML- og Java-basert konfigurasjon, kan vi ikke bare konfigurere bønner.

Hvis vi trenger å sette en alias for vår bønne kan vi gjøre det enkelt:

registerAlias ​​("bandsBean", "bands")

Hvis vi vil definere bønnens omfang:

{bean -> bean.scope = "prototype"}

For å legge til tilbakeringing av livssyklus for bønnen vår kan vi gjøre:

{bean -> bean.initMethod = "someInitMethod" bean.destroyMethod = "someDestroyMethod"}

Vi kan også spesifisere arv i bønnedefinisjonen:

{bean-> bean.parent = "someBean"}

Til slutt, hvis vi trenger å importere noen tidligere definerte bønner fra en XML-konfigurasjon, kan vi gjøre dette ved hjelp av importBeans ():

importBeans ("somexmlconfig.xml")

5. Konklusjon

I denne veiledningen så vi hvordan vi skulle lage Spring Groovy bønnekonfigurasjoner. Vi dekket også innstilling av tilleggsegenskaper på bønnene våre, som aliaser, omfang, foreldre, metoder for initialisering eller destruksjon, og hvordan du importerer andre XML-definerte bønner.

Selv om eksemplene er enkle, kan de utvides og brukes til å lage alle typer vårkonfigurasjoner.

En fullstendig eksempelkode som brukes i denne artikkelen finner du i GitHub-prosjektet vårt. Dette er et Maven-prosjekt, så du bør kunne importere det og kjøre det som det er.