logo

Spring Boot Anotácie

Spring Boot Annotations je forma metadát, ktorá poskytuje údaje o programe. Inými slovami, anotácie sa používajú na poskytovanie doplnkové informácie o programe. Nie je súčasťou aplikácie, ktorú vyvíjame. Nemá to priamy vplyv na fungovanie kódu, ktorý anotujú. Nezmení činnosť skompilovaného programu.

V tejto časti budeme diskutovať o niektorých dôležitých Spring Boot Anotácia ktoré použijeme neskôr v tomto návode.

Core Spring Framework Anotácie

@Požadovaný: Vzťahuje sa na fazuľa setterova metóda. Označuje, že anotovaný bean musí byť v čase konfigurácie naplnený požadovanou vlastnosťou, inak vyvolá výnimku BeanInitilizationException .

Príklad

android.process.acore sa stále zastavuje
 public class Machine { private Integer cost; @Required public void setCost(Integer cost) { this.cost = cost; } public Integer getCost() { return cost; } } 

@Autowired: Spring poskytuje automatické zapojenie založené na anotáciách poskytnutím anotácie @Autowired. Používa sa na automatické zapojenie spring bean na metódy nastavovača, premennej inštancie a konštruktora. Keď použijeme anotáciu @Autowired, pružinový kontajner automaticky prepojí fazuľu podľa typu údajov.

Príklad

 @Component public class Customer { private Person person; @Autowired public Customer(Person person) { this.person=person; } } 

@Konfigurácia: Je to anotácia na úrovni triedy. Trieda s anotáciou @Configuration, ktorú používa Spring Containers ako zdroj definícií fazule.

java inicializovať pole

Príklad

 @Configuration public class Vehicle { @BeanVehicle engine() { return new Vehicle(); } } 

@ComponentScan: Používa sa, keď chceme naskenovať balíček na fazuľu. Používa sa s anotáciou @Configuration. Môžeme tiež špecifikovať základné balíky na skenovanie Spring Components.

Príklad

 @ComponentScan(basePackages = 'com.javatpoint') @Configuration public class ScanComponent { // ... } 

@Bean: Je to anotácia na úrovni metódy. Je to alternatíva k XML tagu. Hovorí o metóde výroby fazule, ktorú má spravovať Spring Container.

Príklad

 @Bean public BeanExample beanExample() { return new BeanExample (); } 

Stereotypové anotácie jarného rámca

@Component: Je to anotácia na úrovni triedy. Používa sa na označenie triedy Java ako bean. Trieda Java s anotáciou @Component sa nachádza počas triedy. Spring Framework to vyberie a nakonfiguruje v kontexte aplikácie ako a Jarná fazuľa .

Príklad

uml diagram java
 @Component public class Student { ....... } 

@Controller: @Controller je anotácia na úrovni triedy. Ide o špecializáciu @Component . Označuje triedu ako obsluhu webových požiadaviek. Často sa používa na poskytovanie webových stránok. V predvolenom nastavení vracia reťazec, ktorý označuje, ktorá trasa sa má presmerovať. Väčšinou sa používa s @RequestMapping anotácia.

Príklad

 @Controller @RequestMapping('books') public class BooksController { @RequestMapping(value = '/{name}', method = RequestMethod.GET) public Employee getBooksByName() { return booksTemplate; } } 

@Služba: Používa sa aj na úrovni triedy. Hovorí Spring, že trieda obsahuje obchodná logika .

Príklad

 package com.javatpoint; @Service public class TestService { public void service1() { //business code } } 

@Úložisko: Je to anotácia na úrovni triedy. Úložisko je a DAO (Data Access Object), ktoré majú priamy prístup k databáze. Úložisko vykonáva všetky operácie súvisiace s databázou.

mysql vytvoriť používateľa
 package com.javatpoint; @Repository public class TestRepository { public void delete() { //persistence code } } 

Spring Boot Anotácie

    @EnableAutoConfiguration:Automaticky nakonfiguruje bean, ktorý je prítomný v ceste k triede, a nakonfiguruje ho na spustenie metód. Použitie tejto anotácie je vo vydaní Spring Boot 1.2.0 obmedzené, pretože vývojári poskytli alternatívu anotácie, t.j. @SpringBootApplication .@SpringBootApplication:Ide o kombináciu troch anotácií @EnableAutoConfiguration, @ComponentScan, a @Konfigurácia .

Jarné anotácie MVC a REST

    @RequestMapping:Používa sa na mapovanie webové žiadosti . Má veľa voliteľných prvkov, napr spotrebuje, hlavička, metóda, názov, parametre, cesta, produkuje , a hodnotu . Používame ho s triedou aj s metódou.

Príklad

 @Controller public class BooksController { @RequestMapping('/computer-science/books') public String getAllBooks(Model model) { //application code return 'bookList'; } 
    @GetMapping:Mapuje to HTTP GET požiadavky na konkrétnu metódu obsluhy. Používa sa na vytvorenie koncového bodu webovej služby, ktorý aporty Používa sa namiesto použitia: @RequestMapping(metóda = RequestMethod.GET) @PostMapping:Mapuje to HTTP POST požiadavky na konkrétnu metódu obsluhy. Používa sa na vytvorenie koncového bodu webovej služby, ktorý vytvára Používa sa namiesto použitia: @RequestMapping(metóda = RequestMethod.POST) @PutMapping:Mapuje to HTTP PUT požiadavky na konkrétnu metódu obsluhy. Používa sa na vytvorenie koncového bodu webovej služby, ktorý vytvára alebo aktualizácie Používa sa namiesto použitia: @RequestMapping(metóda = RequestMethod.PUT) @DeleteMapping:Mapuje to HTTP DELETE požiadavky na konkrétnu metódu obsluhy. Používa sa na vytvorenie koncového bodu webovej služby, ktorý vymaže zdroj. Používa sa namiesto použitia: @RequestMapping(metóda = RequestMethod.DELETE) @PatchMapping:Mapuje to HTTP PATCH požiadavky na konkrétnu metódu obsluhy. Používa sa namiesto použitia: @RequestMapping(metóda = RequestMethod.PATCH) @RequestBody:Je zvyknutý viazať HTTP požiadavka s objektom v parametri metódy. Vnútorne používa HTTP MessageConverters na konverziu tela žiadosti. Keď označíme parameter metódy pomocou @RequestBody, rámec Spring viaže telo prichádzajúcej HTTP požiadavky na tento parameter.@ResponseBody:Spája návratovú hodnotu metódy s telom odpovede. Hovorí platforme Spring Boot Framework, aby serializovala návrat objektu do formátu JSON a XML.@PathVariable:Používa sa na extrahovanie hodnôt z URI. Najviac sa hodí pre webovú službu RESTful, kde URL obsahuje premennú cestu. V metóde môžeme definovať viacero @PathVariable.@RequestParam:Používa sa na extrahovanie parametrov dopytu z adresy URL. Je tiež známy ako a parameter dopytu . Je najvhodnejší pre webové aplikácie. Ak parameter dopytu nie je prítomný v adrese URL, môže určiť predvolené hodnoty.@RequestHeader:Používa sa na získanie podrobností o hlavičkách požiadaviek HTTP. Túto anotáciu používame ako a parameter metódy . Nepovinné prvky anotácie sú názov, povinné, hodnota, predvolená hodnota. Pre každý detail v hlavičke by sme mali špecifikovať samostatné anotácie. V metóde ho môžeme použiť viackrát@RestController:Dá sa to považovať za kombináciu @Controller a @ResponseBody anotácie . Samotná anotácia @RestController je anotovaná anotáciou @ResponseBody. Eliminuje to potrebu anotácie každej metódy pomocou @ResponseBody.@RequestAttribute:Spája parameter metódy s atribútom request. Poskytuje pohodlný prístup k atribútom požiadavky z metódy kontroléra. Pomocou anotácie @RequestAttribute môžeme pristupovať k objektom, ktoré sú naplnené na strane servera.

Poznámka: Všetky vyššie uvedené anotácie sme použili v našej príručke RESTful Web Services s príkladmi z reálneho sveta.