Šis raksts ir mašīntulkošanas spoguļraksts, lūdzu, noklikšķiniet šeit, lai pārietu uz oriģinālo rakstu.

Skats: 20361|Atbildi: 0

[Avots] Java anotē atšķirību starp @PostConstruct un statiskajiem konstruktoriem

[Kopēt saiti]
Publicēts 2021-7-30 10:48:11 | | | |
Nesen es saskāros ar šo anotāciju uzņēmuma projekta @PostConstruct un es biju neizpratnē.

Pārskats:

Java annotations@PostConstruct un detalizēti paskaidrojumi un piemēri @PreDestroy
https://www.itsvse.com/thread-7386-1-1.html


Pēc konsultācijām kopsavilkums ir šāds:

1. Sākot ar Java EE5 specifikāciju, tiek izmantotas divas anotācijas, kas ietekmē servleta dzīves ciklu, @PostConstruct un @PreDestroy, lai modificētu nestatisko void() metodi. Ir divi veidi, kā to uzrakstīt:

@PostConstruct

public void someMethod(){}

vai

publiskais @PostConstruct anulēt someMethod(){}

@PostConstruct modificētā metode darbojas, kad serveris ielādē servletu, unServeris to izpildīs tikai vienu reizi。 PostConstruct tiek izpildīts pēc konstruktora un pirms init() metodes. PreDestroy() metode tiek izpildīta pēc tam, kad destroy() metode ir intelektuāla



Turklāt konstruktora, @Autowired un @PostConstruct pasūtījums pavasarī

Faktiski, no atkarības injekcijas burtiskas nozīmes, mēs varam zināt, ka, lai injicētu objektu p objektā A, tad objekts A un objekts p vispirms ir jāģenerē pirms injekcijas veikšanas. Tātad, ja locekļa mainīgais p ir anotēts @Autowried A klasē, tad @Autowired injekcija notiek pēc A konstrukcijas metodes izpildes.

Ja, ģenerējot objektu, vēlaties pabeigt dažas inicializācijas operācijas, un šīs inicializācijas operācijas ir atkarīgas no atkarības injekcijas, to nevar izdarīt konstruktorā. Lai to izdarītu, varat izmantot metodi @PostConstruct anotācijām, lai pabeigtu inicializāciju, @PostConstruct anotētās metodes tiks automātiski izsauktas pēc atkarības injekcijas pabeigšanas.

Konstruktoru >> @Autowired >> @PostConstruct

Piemērs:







Iepriekšējo:Docker instalē Redis vizuālās pārvaldības rīku (redis-manager)
Nākamo:Kafkas auto.offset.reset vērtība ir detalizēti izskaidrota
Atruna:
Visa programmatūra, programmēšanas materiāli vai raksti, ko publicē Code Farmer Network, ir paredzēti tikai mācību un pētniecības mērķiem; Iepriekš minēto saturu nedrīkst izmantot komerciāliem vai nelikumīgiem mērķiem, pretējā gadījumā lietotājiem ir jāuzņemas visas sekas. Informācija šajā vietnē nāk no interneta, un autortiesību strīdiem nav nekāda sakara ar šo vietni. Iepriekš minētais saturs ir pilnībā jāizdzēš no datora 24 stundu laikā pēc lejupielādes. Ja jums patīk programma, lūdzu, atbalstiet oriģinālu programmatūru, iegādājieties reģistrāciju un iegūstiet labākus oriģinālus pakalpojumus. Ja ir kādi pārkāpumi, lūdzu, sazinieties ar mums pa e-pastu.

Mail To:help@itsvse.com