Java bønner i vårrammen

Java bønner i vårrammen
I denne artikkelen vil vi lære å forstå kjernekonseptet til Java Bean brukt i vårrammen.

Bønne

Java Bean er en kjernedel av en vårapplikasjon som er et rent Java -objekt representert av en klasse. Det er en runtime -enhet som administreres av IOC -beholderen.

IOC -beholderen oppretter, initialiserer, løper og ødelegger bønnen basert på søknadskravet.

I forrige artikkel opprettet vi en bønnestudent som vi konfigurerte ved å bruke XML- og Java -merknadene.

Spring IOC -beholder oppretter bønneobjektet ved hjelp av enten XML -fil eller Java -merknader som gir metadata. IOC bruker disse metadataene for å håndtere bønneobjektene gjennom hele applikasjonssammenhengen.

Hvordan lage java bønne

Som vi allerede har diskutert, er Java Bean en klasse som inneholder private egenskaper, getttere og settere -metoden. Du kan opprette bønnen med ethvert gyldig navn og enhet som student. I vårt tilfelle er en studentbønne som følgende:

// Student.Java

pakke com.Linuxhint.bønner;
offentlig klasse student
privat int ID;
privat strengnavn;
public String getName ()
Returnavn;

public void setName (strengnavn)
dette.Navn = navn;

public int getId ()
Retur ID;

public void setid (int id)
dette.id = id;

Konfigurasjon av bønner om våren

Fjæren støtter følgende tre typer for å konfigurere bønnen:

  • XML -basert konfigurasjon
  • Java @component -merknad
  • Java @bean -merknad

La oss forstå en etter en.

Konfigurer i XML -fil

For å konfigurere bønnen i XML -filen, må du bruke stikkord med de nødvendige og støttende attributtene som ID og klasse.

“ApplicationContext.XML ”-fil ser ut som følgende:


xmlns: xsi = "http: // www.W3.org/2001/xmlschema-instans "
XSI: schemalocation = "http: // www.Springframework.org/skjema/bønner
http: // www.Springframework.org/skjema/bønner/fjærbønner-3.0.XSD ">



De stikkord er valgfritt og påkrevd hvis du vil angi statiske verdier for bønnen.

Mens vi lager bønnen og setter metadatakonfigurasjonen, leverer vi følgende valgfrie attributter til bønnen som følgende:

  • Bønnens navn skal være et fullt kvalifisert navn som for eksempel com.Linuxhint.Student.
  • Vi må spesifisere bønneomfang, tilbakeringing osv. For å administrere bønnestrømmen.
  • Bønneavhengighetene som er avhengige av de andre bønnene og krever mens du oppretter bønneobjektet.

Konfigurer ved hjelp av @Component -merknaden

Hvis du vil bruke den Java-baserte merknaden og ikke liker å bruke XML-koden, er dette en passende måte å konfigurere bønnen for deg.

Her bruker vi @component -merknaden med studentklassen for å markere klassen som bønne. Våren IOC behandler denne klassen som bønne og klarer den under kjøretid.

Denne merknaden er en stereotype og lokalisert i org.Springframework.stereotype pakke. Bønnen ser ut som følgende etter å ha lagt til @component -merknaden:

// Student.Java

Import org.Springframework.stereotype.Komponent;
@Komponent
offentlig klasse student
privat int ID;
privat strengnavn;
// getttere
// Setters

Mens vi bruker denne merknaden, må vi bruke taggen i ApplicationContext.XML -fil slik at IOC kan skanne all komponenten i prosjektet ditt.

// ApplicationContext.XML


xmlns: xsi = "http: // www.W3.org/2001/xmlschema-instans "
xmlns: context = "http: // www.Springframework.org/skjema/kontekst "
XSI: schemalocation = "http: // www.Springframework.org/skjema/bønner http: // www.Springframework.org/skjema/bønner/fjærbønner.XSD http: // www.Springframework.org/skjema/kontekst http: // www.Springframework.org/skjema/kontekst/vårkontekst.XSD ">

Konfigurasjon ved hjelp av @bean -merknad

Dette er en annen måte å konfigurere bønnen ved å bruke @Bean -merknaden. I dette tilfellet må vi opprette en konfigurasjonsklasse med @configuration -merknaden og returnere gjenstanden for bønnen ved å bruke @bean -merknaden. La oss forstå med kildekoden.

Dette er vår studentbønne -klasse:

// Student.Java

offentlig klasse student
privat int ID;
privat strengnavn;
// getttere
// Setters

Dette er konfigurasjonsklassen vår som returnerer et bønneobjekt:

// SpringConfig.Java

Import org.Springframework.kontekst.merknad.Bønne;
Import org.Springframework.kontekst.merknad.Konfigurasjon;
import com.Linuxhint.bønner.Student;
@Configuration
offentlig klasse SpringConfig
@Bønne
Public Student Studentbean ()

Returner ny student ();

Alle disse er de gyldige måtene å konfigurere og opprette bønnen i vårapplikasjonen. Du kan følge hvilken som helst av disse, men den mest moderne tilnærmingen er den merknadsbaserte konfigurasjonen som enten bruker @component eller @bean-merknaden.

Bean -definisjonsegenskaper

XML -taggen støtter flere attributter, noen av dem er oppført her. Du kan henvise denne tabellen for å sjekke de støttede egenskapene til bønn og kan bruke til å konfigurere et bønneobjekt.

Eiendomsnavn Kort
Klasse Det spesifiserer klassenavnet for bønneobjektet.
Navn Det spesifiserer det unike navnet for bønneobjektet.
omfang Vi kan bruke denne attributtet til å spesifisere omfanget som prototype eller singleton.
Konstruktørargumenter Vi kan bruke den til å spesifisere den konstruktørbaserte avhengighetsinjeksjonen i applikasjonen.
Eiendomsnavn Kort
Egenskaper Det brukes til å stille inn eiendomsbasert avhengighetsinjeksjon.
Autowiring -modus For bønne billedninger.
Samarbeidspartnere og lat initialiseringsmodus For å sette den late bønnens initialisering i applikasjonen.
Initialiseringsmetode For å sette metoden som kjøres på tidspunktet for bønnens initialisering i applikasjonen.
Ødeleggelsesmetode En metode som kjøres før du ødelegger bønneobjektet.

La oss forstå noen attributter til taggen mens vi konfigurerer bønnen.

ID- og klasseattributtet som vi allerede har sett i artikkelen. Så la oss utforske med den late init og de andre.

Lat bønneinitialisering

For å erklære en bønne lat, kan vi bruke lat-init-attributtet som ber IOC om ikke å lage bønnen på initialiseringstidspunktet.



Angi init -metoden for bønne

For å utføre en metode ved initialisering av en bønne, gir våren init-metode attributt som spesifiserer metoden.



Sette ødeleggelsesmetoden for bønne

Tilsvarende kan vi spesifisere metoden som utfører på bønnen Destroy Time. For dette formålet bruker vi Destroy-Method-attributtet.



Konklusjon

I denne artikkelen lærte vi Java Bean -konseptet i dybden med flere konfigurasjonsteknikker. I neste artikkel lærer vi livssyklusen og nyttige metoder.