English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Les annotations Spring Boot sont une forme de métadonnées qui fournissent des informations sur le programme. Autrement dit, les annotations sont utilisées pour fournir des informations sur le programme. ComplémentIl ne fait pas partie de l'application que nous développons. Il n'a pas d'impact direct sur les opérations du code annoté. Il ne changera pas les opérations du programme compilé.
Dans cette section, nous discuterons de quelques informations importantes. Spring Boot annotationsNous utiliserons cela dans la partie suivante de ce tutoriel.
@Required: Il s'applique à bean Méthode de configuration. Elle indique que les propriétés nécessaires doivent être remplies pour le bean annoté lors de la configuration, sinon une exception sera levée BeanInitilizationException .
exemple
public class Machine { private Integer cost; @Required public void setCost(Integer cost) { this.cost = cost; } public Integer getCost() { retourne cost; } }
@Autowired: : Spring fournit l'auto-configuration basée sur les annotations via l'annotation @Autowired. Il est utilisé pour connecter automatiquement les méthodes setter, les variables d'instance et les constructeurs de spring bean. Lorsque nous utilisons l'annotation @Autowired, le conteneur Spring connecte automatiquement le bean en correspondance avec le type de données.
exemple
@Component public class Customer { private Person person; @Autowired public Customer(Person person) { this.person=person; } }
@Configuration: : Il s'agit d'une annotation de niveau classe. Les classes marquées avec l'annotation @Configuration sont utilisées par les conteneurs Spring comme source de définition de bean.
exemple
@Configuration public class Vehicle { @BeanVehicle engine() { retourne new Vehicle(); } }
@ComponentScan: : Utilisé lorsque nous devons scanner des beans dans un paquetage. Il est utilisé avec l'annotation @Configuration. Nous pouvons également spécifier les paquets de bases utilisés pour scanner les composants Spring.
exemple
@ComponentScan(basePackages = "com.w"3codebox") @Configuration public class ScanComponent { // ... }
@Bean: Il s'agit d'une annotation de niveau méthode. C'est une XML
exemple
@Bean public BeanExample beanExample() { retourne new BeanExample(); }
@Component: . It is a class-level annotation. It is used to mark a Java class as a Bean. A Java class that is found in the classpath with @Component annotated Java class. The Spring framework picks it up and configures it in the application context as Spring Bean .
exemple
@Component public class Student { ....... }
@Controller: @Controller is a class-level annotation. It is @Component specialization. It marks a class as a Web request handler. It is usually used for serving web pages. By default, it returns a string indicating the route to be redirected. It is usually used with @RequestMapping annotations are used together.
exemple
@Controller @RequestMapping("books") public class BooksController { @RequestMapping(value = "/{name}, method = RequestMethod.GET) public Employee getBooksByName() { return booksTemplate; } }
@Service: is also used at the class level. It tells Spring that this class contains business logic.
exemple
package com.w3codebox; @Service public class TestService { public void service1() { //business code } }
@Repository: This is a class-level annotation. The repository is directly accessing the database DAO (Data Access Object). This repository performs all operations related to the database.
package com.w3codebox; @Repository public class TestRepository { public void delete() { //persistence code } }
@EnableAutoConfiguration: : It automatically configures the bean existing in the classpath and configures it as a running method. In Spring Boot 1.2.0 version has reduced the use of this annotation because developers have provided an alternative method for this annotation, namely @SpringBootApplication . @SpringBootApplication: : It is three annotations @EnableAutoConfiguration, @ComponentScan,和 @Configuration 的组合。
@RequestMapping: pour mapperrequête réseau。Il possède de nombreux éléments optionnels, tels que consumes, header, method, name, params, path, produces et value. Nous l'utilisons avec la classe et la méthode.
exemple
@Controller public class BooksController { @RequestMapping("/computer-science/books) public String getAllBooks(Model model) { //code application return "bookList"; } }
@GetMapping: Il lie HTTP GET mapper la requête à une méthode de traitement spécifique. Il est utilisé pour créerextrairel'extrémité de service Web, à la place de @RequestMapping(method = RequestMethod.GET) @PostMapping Il lie HTTP POST mapper la requête à une méthode de traitement spécifique. Il est utilisé pour créercréerl'extrémité de service Web, à la place de @RequestMapping(method = RequestMethod.POST) @PutMapping: Il lie HTTP PUT mapper la requête à une méthode de traitement spécifique. Il est utilisé pour créercréeroumettre à jourl'extrémité de service Web, à la place de @RequestMapping(method = RequestMethod.PUT) @DeleteMapping: Il lie HTTP DELETE mapper la requête à une méthode de traitement spécifique. Il est utilisé pour créersupprimerl'extrémité de service Web de la ressource. Utilisez-le à la place de @RequestMapping(method = RequestMethod.DELETE) @PatchMapping: Il lie HTTP PATCH mapper la requête à une méthode de traitement spécifique. Utilisez-le à la place de @RequestMapping(method = RequestMethod.PATCH) @RequestBody: pour lier le corps de la requête HTTP aux objetslier。À l'intérieur, il utilise HTTP MessageConverters Transformer le corps de la requête. Lorsque nous utilisons Lorsqu'on applique l'annotation @RequestBody à un paramètre de méthode, le cadre Spring lie le corps de la requête HTTP entrante à ce paramètre. @ResponseBody: Il lie la valeur retournée par la méthode au corps de la réponse. Il indique au cadre Spring Boot que l'objet retourné doit être sérialisé en format JSON et XML. @PathVariable: 用于从 URI 中提取值。它最适合 RESTful Web 服务,其中 URL 包含路径变量。我们可以在一个方法中定义多个 @PathVariable。 @RequestParam: 用于从 URL 提取查询参数。也称为查询参数。它最适合 Web 应用程序。如果 URL 中不存在查询参数,则可以指定默认值。 @RequestHeader: 用于获取有关 HTTP 请求标头的详细信息。我们将此注解用作方法参数。注解的可选元素是名称,必填,值,defaultValue。 对于标题中的每个细节,我们应指定单独的注解。我们可以在一种方法中多次使用它 @RestController: 可以将其视为 @Controller 和 @ResponseBody 注解的组合。 @RestController 注解本身使用 @ResponseBody 注解进行注解。无需为每个方法使用 @ResponseBody 注解。 @RequestAttribute: 它将方法参数绑定到请求属性。它提供了从控制器方法方便地访问请求属性的方法。借助 @RequestAttribute 注解,我们可以访问服务器端填充的对象。