Maison > Problème commun > le corps du texte

Quelles sont les annotations courantes pour Springboot ?

青灯夜游
Libérer: 2020-09-08 16:30:51
original
92821 Les gens l'ont consulté

Les annotations courantes dans springboot incluent : 1. SpringBootApplication 2. Référentiel 3. Service 4. RestController 5. ResponseBody ;

Quelles sont les annotations courantes pour Springboot ?

Les annotations courantes dans Springboot sont :

1 @SpringBootApplication

Cette annotation est l'annotation principale de Spring Boot. Elle est utilisée sur la classe principale de Spring Boot pour l'identifier en tant qu'application Spring Boot et est utilisée pour activer diverses fonctionnalités de Spring Boot. En fait, cette annotation est une combinaison de trois annotations : @Configuration, @EnableAutoConfiguration et @ComponentScan. Étant donné que ces annotations sont généralement utilisées ensemble, Spring Boot fournit une annotation unifiée @SpringBootApplication.

2. @EnableAutoConfiguration

permet à Spring Boot de configurer automatiquement les annotations. Après avoir activé cette annotation, Spring Boot peut configurer Spring en fonction des packages ou des classes actuels. chemin de classe.

Par exemple : il existe le package Mybatis JAR sous le chemin de classe actuel, et l'annotation MybatisAutoConfiguration peut configurer chaque Spring Bean de Mybatis en fonction des paramètres pertinents.

La clé de l'implémentation de @EnableAutoConfiguration est l'introduction d'AutoConfigurationImportSelector. Sa logique de base est la méthode selectImports. La logique est à peu près la suivante :

● Charger tous les composants possibles à partir du fichier de configuration. META-INF/spring.factories Classes de configuration automatique ;

● Classes de déduplication et d'exclusion portées par les attributs d'exclusion et d'exclusionName

● Filtrer et renvoyer les classes de configuration automatique qui remplissent les conditions (@Conditional) ; ;

3. @Configuration

est utilisé pour définir la classe de configuration, indiquant que cette classe est la source d'informations pour la configuration du Bean, ce qui est équivalent au XML traditionnel. fichier de configuration et est généralement ajouté à la classe principale. Si certaines bibliothèques tierces doivent utiliser des fichiers XML, il est recommandé de toujours utiliser la classe @Configuration comme classe de configuration principale du projet - vous pouvez utiliser l'annotation @ImportResource pour charger le fichier de configuration XML.

4. @ComponentScan

analyse des composants. Laissez Spring Boot analyser la classe Configuration et ajoutez-la au contexte du programme.

L'annotation @ComponentScan assemblera les classes annotées avec @Controller, @Service, @Repository et @Component dans le conteneur Spring par défaut.

5. @Repository

est utilisé pour étiqueter les composants d'accès aux données, c'est-à-dire les composants DAO.

L'utilisation de l'annotation @Repository peut garantir que DAO ou les référentiels fournissent une traduction d'exception. La classe DAO ou les référentiels modifiés par cette annotation sera découverte et configurée par ComponentScan, et il n'est pas nécessaire de fournir des éléments de configuration XML pour eux. .

6. @Service

Composants généralement utilisés pour modifier la couche de service

7 @RestController

Utilisé pour marquer les composants de la couche de contrôle (tels que l'action dans struts), indiquant qu'il s'agit d'un bean contrôleur, et la valeur de retour de la fonction est directement renseignée dans le corps de la réponse HTTP. C'est un contrôleur de style REST, c'est @ ; Contrôleur et collection de @ResponseBody.

8. @ResponseBody

signifie que le résultat de retour de cette méthode est directement écrit dans le corps de la réponse HTTP

est généralement utilisé lors de l'obtention. données de manière asynchrone.Après avoir utilisé @RequestMapping, la valeur de retour est généralement analysée comme un chemin de saut. Après avoir ajouté @responsebody, le résultat renvoyé ne sera pas analysé comme un chemin de saut, mais sera écrit directement dans le corps de la réponse HTTP. Par exemple, si vous obtenez des données json de manière asynchrone et ajoutez @responsebody, les données json seront renvoyées directement.

9. @Component

fait généralement référence à des composants lorsque les composants sont difficiles à classer, nous pouvons utiliser cette annotation pour l'annotation.

10. @Bean

est équivalent à Un haricot et géré au printemps.

11. @AutoWired

méthode byType. Utilisez les beans configurés pour terminer l'assemblage des attributs et des méthodes. Il peut annoter les variables, les méthodes et les constructeurs des membres de la classe pour terminer l'assemblage automatique.

Lorsque (required=false) est ajouté, aucune erreur ne sera signalée même si le bean est introuvable.

12. @Qualifier

Lorsqu'il y a plusieurs beans du même type, vous pouvez utiliser @Qualifier("name") pour spécifier. Utilisé conjointement avec @Autowired

13 @Resource(name="name",type="type")

S'il n'y a pas de contenu entre parenthèses, byName. est la valeur par défaut. Faites des choses similaires avec @Autowired.

14. @RequestMapping

RequestMapping est une annotation utilisée pour traiter le mappage d'adresse de demande ; fournit des informations de routage et est responsable du mappage des URL vers des fonctions spécifiques dans le contrôleur disponible. sur une classe ou une méthode. Utilisé sur une classe, cela signifie que toutes les méthodes de la classe qui répondent aux requêtes utilisent cette adresse comme chemin parent.

15. @RequestParam

est utilisé devant les paramètres de la méthode. Exemple :

@RequestParam String a =request.getParameter("a")。
Copier après la connexion

16. @PathVariable

Variable de chemin. Les paramètres doivent être les mêmes que les noms entre accolades. Exemple :

RequestMapping("user/get/mac/{macAddress}")
public String getByMacAddress(@PathVariable String macAddress){
  //do something;
}
Copier après la connexion

17. @Profiles

Les profils Spring fournissent un moyen d'isoler les configurations d'application et permettent d'utiliser ces configurations uniquement dans des environnements spécifiques efficaces ci-dessous.

任何@Component或@Configuration都能被@Profile标记,从而限制加载它的时机。

@Configuration
@Profile("prod")
public class ProductionConfiguration {
    // ...
}
Copier après la connexion

18、@ConfigurationProperties

Spring Boot可使用注解的方式将自定义的properties文件映射到实体bean中,比如config.properties文件。

@Data
@ConfigurationProperties("rocketmq.consumer")
public class RocketMQConsumerProperties extends RocketMQProperties {
    private boolean enabled = true;
    private String consumerGroup;
    private MessageModel messageModel = MessageModel.CLUSTERING;
    private ConsumeFromWhere consumeFromWhere = ConsumeFromWhere.CONSUME_FROM_LAST_OFFSET;
    private int consumeThreadMin = 20;
    private int consumeThreadMax = 64;
    private int consumeConcurrentlyMaxSpan = 2000;
    private int pullThresholdForQueue = 1000;
    private int pullInterval = 0;
    private int consumeMessageBatchMaxSize = 1;
    private int pullBatchSize = 32;
}
Copier après la connexion

以上就是本篇文章的全部内容,希望能对大家的学习有所帮助。更多精彩内容大家可以关注php中文网相关教程栏目!!!

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!