Acest articol este un articol oglindă al traducerii automate, vă rugăm să faceți clic aici pentru a sări la articolul original.

Vedere: 20361|Răspunde: 0

[Sursă] Java adnotează diferența dintre constructorii @PostConstruct și cei statici

[Copiază linkul]
Postat la 2021-7-30 10:48:11 | | | |
Recent, am dat peste această adnotare într-un @PostConstruct de proiect al companiei și am rămas nedumerit.

Recenzie:

Java annotations@PostConstruct explicații detaliate și exemple de @PreDestroy
https://www.itsvse.com/thread-7386-1-1.html


După consultare, rezumatul este următorul:

1. Pornind de la specificația Java EE5, două adnotări care afectează ciclul de viață al servletului, @PostConstruct și @PreDestroy, sunt folosite pentru a modifica o metodă void() nestatică. Există două moduri de a o scrie:

@PostConstruct

public void someMethod(){}

sau

public @PostConstruct void someMethod(){}

Metoda modificată @PostConstruct rulează atunci când serverul încarcă servlet-ul, șiServerul va executa o singură dată。 PostConstruct se execută după constructor și înainte de metoda init(). Metoda PreDestroy() se execută după ce metoda destroy() este intelectuală



În plus, ordinea Constructorului, @Autowired și @PostConstruct primăvara

De fapt, din sensul literal al injecției de dependență, putem ști că pentru a injecta obiectul p în obiectul A, atunci obiectul A și obiectul p trebuie mai întâi generate înainte ca injectarea să poată fi efectuată. Astfel, dacă o variabilă membru p este adnotată @Autowried în clasa A, atunci @Autowired injectare are loc după ce metoda de construcție a lui A este executată.

Dacă vrei să finalizezi unele operații de inițializare când generezi un obiect, iar aceste operații de inițializare depind de injectarea dependenței, atunci nu poți face asta în constructor. Pentru a face acest lucru, poți folosi o metodă @PostConstruct adnotări pentru a finaliza inițializarea, @PostConstruct metodele adnotate vor fi apelate automat după finalizarea injectării de dependență.

Constructor >> @Autowired >> @PostConstruct

Exemplu:







Precedent:Docker instalează Instrumentul de Management Vizual Redis (redis-manager)
Următor:Valoarea auto.offset.reset a lui Kafka este explicată în detaliu
Disclaimer:
Tot software-ul, materialele de programare sau articolele publicate de Code Farmer Network sunt destinate exclusiv scopurilor de învățare și cercetare; Conținutul de mai sus nu va fi folosit în scopuri comerciale sau ilegale, altfel utilizatorii vor suporta toate consecințele. Informațiile de pe acest site provin de pe Internet, iar disputele privind drepturile de autor nu au legătură cu acest site. Trebuie să ștergi complet conținutul de mai sus de pe calculatorul tău în termen de 24 de ore de la descărcare. Dacă îți place programul, te rugăm să susții software-ul autentic, să cumperi înregistrarea și să primești servicii autentice mai bune. Dacă există vreo încălcare, vă rugăm să ne contactați prin e-mail.

Mail To:help@itsvse.com