logo

Spring Boot Anotace

Spring Boot Annotations je forma metadat, která poskytuje data o programu. Jinými slovy, anotace se používají k poskytování doplňkové informace o programu. Není součástí aplikace, kterou vyvíjíme. Nemá přímý vliv na fungování kódu, který anotují. Nemění to činnost kompilovaného programu.

V této části budeme diskutovat o některých důležitých Spring Boot Anotace které použijeme později v tomto tutoriálu.

Core Spring Framework Anotace

@Požadované: Platí pro fazole setterova metoda. Označuje, že anotovaný bean musí být v době konfigurace naplněn požadovanou vlastností, jinak vyvolá výjimku BeanInitilizationException .

Příklad

 public class Machine { private Integer cost; @Required public void setCost(Integer cost) { this.cost = cost; } public Integer getCost() { return cost; } } 

@Autowired: Spring poskytuje automatické propojení založené na anotacích poskytnutím anotace @Autowired. Používá se k automatickému zapojování spring bean na metodách setter, proměnné instance a konstruktoru. Když použijeme anotaci @Autowired, pružinový kontejner automaticky propojí fazole odpovídajícím datovým typem.

Příklad

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

@Konfigurace: Je to anotace na úrovni třídy. Třída anotovaná @Configuration používaná Spring Containers jako zdroj definic fazolí.

co je řečník

Příklad

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

@ComponentScan: Používá se, když chceme naskenovat balíček na fazole. Používá se s anotací @Configuration. Můžeme také určit základní balíčky pro skenování Spring Components.

Příklad

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

@Fazole: Je to anotace na úrovni metody. Jedná se o alternativu XML tagu. Říká metodu výroby fazole, kterou má spravovat Spring Container.

Příklad

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

Spring Framework Stereotype Anotace

@Komponent: Je to anotace na úrovni třídy. Používá se k označení třídy Java jako bean. Třída Java s anotací @Komponent se nachází během classpath. Spring Framework jej vyzvedne a nakonfiguruje v kontextu aplikace jako a Jarní fazole .

co je java hashmap

Příklad

 @Component public class Student { ....... } 

@Ovladač: @Controller je anotace na úrovni třídy. Jedná se o specializaci @Komponent . Označuje třídu jako obsluhu webových požadavků. Často se používá k poskytování webových stránek. Ve výchozím nastavení vrací řetězec, který označuje, kterou cestu je třeba přesměrovat. Většinou se používá s @RequestMapping anotace.

Příklad

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

@Servis: Používá se také na úrovni třídy. Říká Springu, že třída obsahuje obchodní logika .

Příklad

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

@Úložiště: Je to anotace na úrovni třídy. Úložiště je a DAO (Data Access Object), které přistupují přímo k databázi. Úložiště provádí všechny operace související s databází.

 package com.javatpoint; @Repository public class TestRepository { public void delete() { //persistence code } } 

Spring Boot Anotace

    @EnableAutoConfiguration:Automaticky nakonfiguruje bean, který je přítomen v cestě třídy, a nakonfiguruje jej pro spouštění metod. Použití této anotace je ve verzi Spring Boot 1.2.0 omezeno, protože vývojáři poskytli alternativu anotace, tj. @SpringBootApplication .@SpringBootApplication:Jedná se o kombinaci tří anotací @EnableAutoConfiguration, @ComponentScan, a @Konfigurace .

Jarní anotace MVC a REST

    @RequestMapping:Používá se k mapování webové požadavky . Má mnoho volitelných prvků jako spotřebuje, hlavička, metoda, název, parametry, cesta, produkuje , a hodnota . Používáme ji s třídou i s metodou.

Příklad

 @Controller public class BooksController { @RequestMapping('/computer-science/books') public String getAllBooks(Model model) { //application code return 'bookList'; } 
    @GetMapping:Mapuje to HTTP GET požadavky na konkrétní metodu obsluhy. Používá se k vytvoření koncového bodu webové služby, který aporty Používá se místo použití: @RequestMapping(method = RequestMethod.GET) @PostMapping:Mapuje to HTTP POST požadavky na konkrétní metodu obsluhy. Používá se k vytvoření koncového bodu webové služby, který vytváří Používá se místo použití: @RequestMapping(metoda = RequestMethod.POST) @PutMapping:Mapuje to HTTP PUT požadavky na konkrétní metodu obsluhy. Používá se k vytvoření koncového bodu webové služby, který vytváří nebo aktualizace Používá se místo použití: @RequestMapping(metoda = RequestMethod.PUT) @DeleteMapping:Mapuje to HTTP DELETE požadavky na konkrétní metodu obsluhy. Používá se k vytvoření koncového bodu webové služby, který smaže zdroj. Používá se místo použití: @RequestMapping(metoda = RequestMethod.DELETE) @PatchMapping:Mapuje to HTTP PATCH požadavky na konkrétní metodu obsluhy. Používá se místo použití: @RequestMapping(metoda = RequestMethod.PATCH) @RequestBody:Je zvyklý svázat HTTP požadavek s objektem v parametru metody. Vnitřně používá HTTP MessageConverters převést tělo požadavku. Když označíme parametr metody pomocí @RequestBody, framework Spring váže tělo příchozího požadavku HTTP na tento parametr.@ResponseBody:Spojí návratovou hodnotu metody s tělem odpovědi. Říká rozhraní Spring Boot Framework, aby serializovalo vrácení objektu do formátu JSON a XML.@PathVariable:Používá se k extrakci hodnot z URI. Nejvhodnější je pro webovou službu RESTful, kde URL obsahuje proměnnou path. V metodě můžeme definovat více @PathVariable.@RequestParam:Používá se k extrahování parametrů dotazu z adresy URL. Je také známý jako a parametr dotazu . Je nejvhodnější pro webové aplikace. Pokud parametr dotazu není v URL přítomen, může specifikovat výchozí hodnoty.@RequestHeader:Používá se k získání podrobností o hlavičkách požadavků HTTP. Tuto anotaci používáme jako a parametr metody . Nepovinné prvky anotace jsou název, povinné, hodnota, výchozíHodnota. Pro každý detail v záhlaví bychom měli zadat samostatné anotace. V metodě ji můžeme použít vícekrát@RestController:Lze to považovat za kombinaci @Ovladač a @ResponseBody anotace . Samotná anotace @RestController je anotována anotací @ResponseBody. Eliminuje to potřebu komentovat každou metodu pomocí @ResponseBody.@RequestAttribute:Sváže parametr metody s atributem požadavku. Poskytuje pohodlný přístup k atributům požadavku z metody kontroléru. S pomocí anotace @RequestAttribute můžeme přistupovat k objektům, které jsou obsazeny na straně serveru.

Poznámka: Všechny výše uvedené anotace jsme použili v našem kurzu RESTful Web Services s příklady z reálného světa.