Denne artikkelen er en speilartikkel om maskinoversettelse, vennligst klikk her for å hoppe til originalartikkelen.

Utsikt: 20361|Svare: 0

[Kilde] Java annoterer forskjellen mellom @PostConstruct og statiske konstruktører

[Kopier lenke]
Publisert 30.07.2021 10:48:11 | | | |
Nylig kom jeg over denne kommentaren i et firmaprosjekt @PostConstruct og jeg ble forvirret.

Anmeldelse:

Java annotations@PostConstruct og detaljerte forklaringer og eksempler på @PreDestroy
https://www.itsvse.com/thread-7386-1-1.html


Etter konsultasjon er sammendraget som følger:

1. Med utgangspunkt i Java EE5-spesifikasjonen brukes to annotasjoner som påvirker levetiden til servleten, @PostConstruct og @PreDestroy, for å modifisere en ikke-statisk void()-metode. Det finnes to måter å skrive det på:

@PostConstruct

public void someMethod(){}

eller

public @PostConstruct void someMethod(){}

Metoden @PostConstruct modifisert kjøres når serveren laster servleten, ogServeren kjører det bare én gang。 PostConstruct utføres etter konstruktøren og før init()-metoden. PreDestroy()-metoden utføres etter at destroy()-metoden er intellektuell



I tillegg er rekkefølgen Constructor, @Autowired og @PostConstruct om våren

Faktisk, ut fra den bokstavelige betydningen av avhengighetsinjeksjon, kan vi vite at for å injisere objekt p i objekt A, må objekt A og objekt p først genereres før injeksjonen kan utføres. Så, hvis en medlemsvariabel p annoteres @Autowried i klasse A, skjer @Autowired injeksjon etter at A sin konstruksjonsmetode er utført.

Hvis du vil fullføre noen initialiseringsoperasjoner når du genererer et objekt, og disse initialiseringsoperasjonene avhenger av avhengighetsinjeksjon, kan du ikke gjøre det i konstruktøren. For å gjøre dette kan du bruke en metode @PostConstruct annotasjoner for å fullføre initialiseringen, @PostConstruct annoterte metoder vil automatisk bli kalt etter at avhengighetsinjeksjonen er fullført.

Konstruktør >> @Autowired >> @PostConstruct

Eksempel:







Foregående:Docker installerer Redis Visual Management Tool (redis-manager)
Neste:Kafkas auto.offset.reset-verdi forklares i detalj
Ansvarsfraskrivelse:
All programvare, programmeringsmateriell eller artikler publisert av Code Farmer Network er kun for lærings- og forskningsformål; Innholdet ovenfor skal ikke brukes til kommersielle eller ulovlige formål, ellers skal brukerne bære alle konsekvenser. Informasjonen på dette nettstedet kommer fra Internett, og opphavsrettstvister har ingenting med dette nettstedet å gjøre. Du må fullstendig slette innholdet ovenfor fra datamaskinen din innen 24 timer etter nedlasting. Hvis du liker programmet, vennligst støtt ekte programvare, kjøp registrering, og få bedre ekte tjenester. Hvis det foreligger noen krenkelse, vennligst kontakt oss på e-post.

Mail To:help@itsvse.com