Šis straipsnis yra veidrodinis mašininio vertimo straipsnis, spauskite čia norėdami pereiti prie originalaus straipsnio.

Rodinys: 16470|Atsakyti: 0

[Šaltinis] "Java" annotations@PostConstruct ir išsamūs paaiškinimai bei @PreDestroy pavyzdžiai

[Kopijuoti nuorodą]
Paskelbta 2019-04-04 16:21:12 | | | |
Trumpas įvadas

Java EE5 pristato dvi anotacijas, @PostConstruct ir @PreDestroy, kurios veikia servlet gyvavimo ciklą, įgalindamos pasirinktines operacijas prieš pupelių inicijavimą ir prieš sunaikinimą. Šiame straipsnyje daugiausia paaiškinama @PostConstruct.

API naudojimo instrukcijos

Toliau pateikiamos @PostConstruct API naudojimo instrukcijos:

PostConstruct anotacijos naudojamos metodams, kuriuos reikia vykdyti baigus priklausomybės injekciją, kad būtų galima atlikti bet kokį inicijavimą. Šis metodas turi būti iškviestas prieš pradedant klasę. Visos klasės, palaikančios priklausomybės injekciją, turi palaikyti šią anotaciją. Net jei klasė nereikalauja jokio išteklių injekcijos, turi būti iškviestas metodas, anotuotas PostConstruct. Yra tik vienas būdas komentuoti šią anotaciją. PostConstruct anotacijų taikymo metodas turi atitikti visus šiuos kriterijus: metodas neturi turėti jokių parametrų, išskyrus atvejus, kai EJB perėmėjas, kaip apibrėžta EJB specifikacijoje, tokiu atveju jis bus su InvocationContext objektu; Metodo grąžinimo tipas turi būti negaliojantis; Metodas neturi būti patikrinta išimtis; PostConstruct taikymo būdas gali būti viešas, apsaugotas, paketas privatus arba privatus; Metodas negali būti statinis, išskyrus programos klientą; Metodas gali būti galutinis; Jei metodas pateikia nepažymėtą išimtį, klasė neturi būti įtraukta į paslaugą, nebent tai yra EJB, kuris gali tvarkyti išimtį ir ją atkurti.
Tai galima apibendrinti taip:

  • Yra tik vienas būdas komentuoti šią anotaciją;
  • Anotuotas metodas neturi turėti jokių parametrų;
  • Anotuotas metodas grąžina reikšmę void;
  • Anotuotas metodas neturi būti patikrinta išimtis;
  • Anotuotas metodas turi būti nestatinis;
  • Šis metodas atliekamas tik vieną kartą;


Servlet vykdymo schema

Pridėjus dvi anotacijas, servletas galės vykdyti struktūrinę schemą:



Konkrečios pupelės instantiacijos proceso metu anotuotas metodas @PostConstruct iškviečiamas po konstrukto metodo ir prieš inicijavimo metodą.

Pavyzdys

Vykdomuosius metodus, parašytus remiantis "Spring boot", galite rasti "github":https://github.com/HappySecondBrother/example

UserService metodas (pateikia talpykloje saugomus duomenis):

"BusinessService" metodas, iškviečiant "UserService" @PostConstruct:

Vykdymo rezultatai:

Projekto paraiška

project@PostConstruct pagrindinis programos scenarijus yra įkelti kai kuriuos talpyklos duomenis inicijuojant servletą.

Pastabos:

Šios anotacijos naudojimas turi įtakos paslaugos pradžios laikui. Serveris nuskaito visus failus WEB-INF/klasėse ir visus jar paketus pagal WEB-INF/lib paleidimo metu.





Ankstesnis:Neįmanoma įterpti @Autowired į klausytuvą
Kitą:Didelio našumo mysql 3rd edition kinų PDF
Atsakomybės apribojimas:
Visa programinė įranga, programavimo medžiaga ar straipsniai, kuriuos skelbia Code Farmer Network, yra skirti tik mokymosi ir mokslinių tyrimų tikslams; Aukščiau nurodytas turinys negali būti naudojamas komerciniais ar neteisėtais tikslais, priešingu atveju vartotojai prisiima visas pasekmes. Šioje svetainėje pateikiama informacija gaunama iš interneto, o ginčai dėl autorių teisių neturi nieko bendra su šia svetaine. Turite visiškai ištrinti aukščiau pateiktą turinį iš savo kompiuterio per 24 valandas nuo atsisiuntimo. Jei jums patinka programa, palaikykite autentišką programinę įrangą, įsigykite registraciją ir gaukite geresnes autentiškas paslaugas. Jei yra kokių nors pažeidimų, susisiekite su mumis el. paštu.

Mail To:help@itsvse.com