Spring Boot
Spring Boot
Spring Boot foloseș te Commons Logging pentru toată logarea internă ș i poț i schimba nivelurile de logare prin
În primul rând, Spring Boot nu este un cadru, ci o modalitate de a facilita crearea aplicaț iilor autonome. adăugând următoarele linii în fiș ierul [Link]:
cu configuraț ii minime sau zero. Este o abordare de a dezvolta aplicaț ii bazate pe Spring cu foarte [Link]=DEBUG
configurare mai puț in. Oferă valori implicite pentru configurarea codului ș i a anotaț iilor pentru a începe rapid noi
proiecte primăvara într-un timp foarte scurt. [Link]=INFO
o Este foarte u ș or să integrezi o aplica ț ie Spring Boot cu ecosistemul său Spring, cum ar fi Există câteva metode HTTP, de exemplu GET, care produc acelaș i răspuns indiferent de câte ori
Spring JDBC, Spring ORM, Spring Data, Spring Security etc. timpuri în care le foloseș ti, de exemplu, trimiterea mai multor cereri GET către aceeaș i URI va rezulta în acelaș i
o Urmează abordarea „Configurare cu valori implicite opț ionale” pentru a reduce efortul dezvoltatorului. răspuns fără niciun efect secundar, de aceea este cunoscut ca idempotent.
o Oferă servere HTTP încorporate precum Tomcat, Jetty etc. pentru a dezvolta ș i testa.
aplicaț ii web foarte uș or. Pe de altă parte, POST-ul nu este idempotent pentru că, dacă trimiț i mai multe cereri POST, va
rezultatul este crearea mai multor resurse pe server, dar din nou, PUT este idempotent dacă îl foloseș ti
Întrebare 3. Ce înseamnă Dev Tools în Spring Boot? pentru a actualiza resursa.
Spring Boot însoț eș te Dev Tools, astfel încât nu trebuie să redeployaț i aplicaț ia de fiecare dată.
tu influenț ezi schimbările. Developerul poate reîncărca progresele fără a reporni Chiar ș i mai multe cereri PUT pentru a actualiza o resursă pe un server vor da acelaș i rezultat final. Puteț i
server. <artifactId>spring-boot-devtools</artifactId> în continuare luaț iFundamentele
HTTPcurs de la Pluralsight pentru a învăț a mai multe despre metode idempotente
al protocolului HTTP ș i HTTP în general.
Întrebare 4. Ce este un actuator în Spring Boot?
informaț ii despre aplicaț ia în execuț ie – sănătate, metrici, informaț ii, dump, env et consumă un serviciu web RESTful foarte uș or
prototype – O nouă instanț ă va fi creată de fiecare dată când bean-ul este solicitat din Spring @Lazy
container.
Această anotare este folosită pe clasele componentelor. În mod implicit, toate dependenț ele autowired sunt
request – This is same as prototype scope, however it’s meant to be used for web applications.
creat ș i configurat la pornire. Dar dacă vrei să initializezi un bean cu întârziere, poț i
Se va crea o nouă instanț ă a bean-ului pentru fiecare cerere HTTP. foloseș te adnotarea @Lazy peste clasă. Aceasta înseamnă că bean-ul va fi creat ș i iniț ializat
doar atunci când este solicitat pentru prima dată
ș edinț ă – Un nou bob va fi creat pentru fiecare sesiune HTTP de către container.
@EnableAutoConfiguration
global-session – Acesta este folosit pentru a crea sesiuni globale pentru aplicaț ii Portlet.
Unele Anotaț ii Această adnotare este de obicei plasată pe clasa principală a aplicaț iei.
Anotarea @EnableAutoConfiguration defineș te implicit un „pachet de căutare” de bază.
Necesar notaț ia spune Spring Boot să înceapă să adauge beans pe baza setărilor căii de clasă, altor beans ș i
diverse setări ale proprietăț ii.
Această anotare este aplicată pe metodele setter ale bean-ului. Consideraț i un scenariu în care trebuie să @SpringBootApplication
impose o proprietate necesară. Anotarea @Required indică faptul că bean-ul afectat trebuie să fie
populat în timpul configurării cu proprietatea necesară. Altfel, o excepț ie de
Această anotare este utilizată pe clasa aplicaț iei în timp ce se configurează un proiect Spring Boot. Clasa
excepț ia BeanInitializationException este aruncată.
that is annotated with the @SpringBootApplication must be kept in the base package
@Autowired
@ControllerAdvice
Această anotare se aplică pe câmpuri, metode setter ș i constructori. Această adnotare este aplicată la nivel de clasă. Aș a cum s-a explicat mai devreme, pentru fiecare controler poț i
Anotarea @Autowired injectează dependenț a obiectului în mod implicit.
foloseș te @ExceptionHandler pe o metodă care va fi apelată atunci când apare o anumită excepț ie. Dar acest lucru
gestionează doar acele excepț ii care apar în cadrul controller-ului în care este definit. Pentru a depăș i
această problemă acum poț i folosi anotarea @ControllerAdvice. Această anotare este folosită pentru
definirea metodelor @ExceptionHandler, @InitBinder ș i @ModelAttribute care se aplică la
@Calificator toate metodele @RequestMapping. Astfel, dacă defineș ti anotarea @ExceptionHandler pe un
metoda din clasa @ControllerAdvice, va fi aplicată tuturor controllerelor.
Această anotare este utilizată împreună cu anotarea @Autowired. Atunci când aveț i nevoie de mai mult control asupra
@RestController
procesul de injectare a dependenț elor, @Qualifier poate fi utilizat. @Qualifier poate fi specificat pe individual
argumentele constructorului sau parametrii metodei. Această anonare este folosită pentru a evita confuzia care
Această Annotaț ie este utilizată la nivel de clasă. Annotaț ia @RestController marchează clasa ca un
controler unde fiecare metodă returnează un obiect de domeniu în loc de o vedere. Prin anotarea unei clase
cu această anotare nu mai este necesar să adăugaț i @ResponseBody la toate RequestMapping
metodă. Asta înseamnă că nu mai foloseș ti rezolvatori de vizualizare sau nu mai trimiț i html ca răspuns. Pur ș i simplu trimiț i