Äskettäin törmäsin tähän merkintään yritysprojektissa @PostConstruct ja olin hämmentynyt.
Arvostelu:
Konsultoinnin jälkeen yhteenveto on seuraava:
1. Java EE5 -määrittelystä alkaen kaksi annotaatiota, jotka vaikuttavat servletin elinkaareen, @PostConstruct ja @PreDestroy, käytetään muokkaamaan ei-staattista void()-menetelmää. Sen voi kirjoittaa kahdella tavalla:
@PostConstruct
public void someMethod(){}
tai
public @PostConstruct void someMethod(){}
@PostConstruct muokattu metodi suoritetaan, kun palvelin lataa servletin, jaPalvelin suorittaa sen vain kerran。 PostConstruct suoritetaan konstruktorin jälkeen ja ennen init()-metodia. PreDestroy()-menetelmä suoritetaan destroy()-metodin jälkeen on älyllinen
Lisäksi keväällä järjestys Constructor, @Autowired ja @PostConstruct
Itse asiassa, riippuvuuden injektion kirjaimellisesta merkityksestä voimme tietää, että objektin p injektoimiseksi objektiin A, ensin on generoitava objekti A ja objekti p ennen injektion suorittamista. Jos jäsenmuuttuja p annotoidaan @Autowried luokkaan A, @Autowired injektio tapahtuu A:n rakennusmenetelmän suorittamisen jälkeen.
Jos haluat suorittaa joitakin alustusoperaatioita objektin luomisessa ja nämä alustusoperaatiot riippuvuuden injektiosta, et voi tehdä sitä konstruktorissa. Tätä varten voit käyttää menetelmää, @PostConstruct annotaatioita alustuksen suorittamiseen, @PostConstruct annotoidut metodit kutsutaan automaattisesti riippuvuuden injektion jälkeen.
Rakentaja>> @Autowired >> @PostConstruct
Esimerkki:
|