Zu den SpringBoot-Kernanmerkungen gehören: @SpringBootApplication*, @Configuration, @SpringBootConfiguration, @ComponentScan, @Conditional usw.
1.@SpringBootApplication*
wird für die meisten verwendet Spring-Hauptklassen Die Kernanmerkung, die Automatisierungskonfigurationsdatei, gibt an, dass es sich um ein SpringBoot-Projekt handelt und wird verwendet, um verschiedene Funktionen von SpringBoot zu aktivieren.
entspricht der Kombination der drei Annotationen @SpringBootConfigryation, @EnableAutoConfiguration und @ComponentScan.
2.@EnableAutoConfiguration
SpringBoot erlauben, Anmerkungen automatisch zu konfigurieren. Nach dem Aktivieren dieser Anmerkung kann SpringBoot dies automatisch tun Konfigurieren Sie Anmerkungen entsprechend den aktuellen Paketen oder Klassen im Klassenpfad, um Spring Beans zu konfigurieren.
Zum Beispiel:
Im aktuellen Pfad befindet sich das MyBatis Jar-Paket, und die Annotation MyBatisAutoConfiguration kann jede Spring Bean von Mybatis gemäß den relevanten Parametern konfigurieren.
3.@Configuration
Eine von Spring 3.0 hinzugefügte Anmerkung, die die Konfigurationsdatei applicationContext.xml ersetzt Dinge, die in dieser Konfigurationsdatei ausgeführt werden können, können über die Klasse registriert werden, in der sich diese Anmerkung befindet.
4.@SpringBootConfiguration
Die Variante der @Configuration-Annotation wird nur zum Ändern der Konfiguration von Spring Boot verwendet . .
5.@ComponentScan
Eine von Spring 3.1 hinzugefügte Anmerkung zum Ersetzen von „component-“ in der Scankonfiguration der Konfigurationsdatei , Komponenten-Scan aktivieren, automatisch die @Component-Annotation unter dem Paketpfad scannen, um die Bean-Instanz zu registrieren und in den Kontext (Container) zu stellen.
6.@Conditional
Eine von Spring 4.0 hinzugefügte Anmerkung zur Identifizierung einer Spring Bean- oder Konfigurationskonfigurationsdatei. die Konfiguration wird nur geöffnet, wenn die angegebenen Bedingungen erfüllt sind
7.@ConditionalOnBean
kombiniert mit dem @ Bedingte Annotation, wenn die Containerkonfiguration nur aktiviert ist, wenn darin eine angegebene Bean vorhanden ist.
8.@ConditionalOnMissingBean
kombiniert die @Conditional-Annotation Bean kann konfiguriert werden.
9. @ConditionalOnClass
In Kombination mit der @Conditional-Annotation kann die Konfiguration nur aktiviert werden, wenn sie vorhanden ist eine angegebene Klasse im Container.
10. @ConditionalOnMissingClass
In Kombination mit der @Conditional-Annotation kann die Konfiguration nur aktiviert werden, wenn keine Klasse vorhanden ist wird im Container angegeben.
11. @ConditionOnWebApplication
In Kombination mit der @Conditional-Annotation kann die Konfiguration nur aktiviert werden, wenn die aktuelle Der Projekttyp ist ein WEB-Projekt.
Es gibt drei Arten von Projekten:
① ANY: Jedes Webprojekt
② SERVLET: Servlet-Webprojekt
③ REACTIVE: basierend auf reaktiv - Basis-Webprojekt
12. @ConditionOnNotWebApplication
kombinierte @Conditional-Annotation, der aktuelle Projekttyp ist kein WEB Projekt Erst dann kann die Konfiguration aktiviert werden.
13. @ConditionalOnProperty
Kombinieren Sie die @Conditional-Annotation nur, wenn die angegebene Eigenschaft den angegebenen Wert hat Konfiguration.
14. @ConditionalOnExpression
In Kombination mit der @Conditional-Annotation kann die Konfiguration nur aktiviert werden, wenn die SpEl Ausdruck ist wahr.
15.@ConditionOnJava
kombiniert die @Conditional-Annotation, wenn die laufende Java-JVM im angegebenen Versionsbereich liegt Öffnen Sie einfach die Konfiguration.
16.@ConditionalResource
kombiniert die @Conditional-Annotation und die Konfiguration wird nur aktiviert, wenn sie vorhanden ist eine angegebene Ressource unter dem Klassenpfad.
17. @ConditionOnJndi
In Kombination mit der @Conditional-Annotation wird die Konfiguration nur aktiviert, wenn die angegebene JNDI existiert.
18. @ConditionalOnCloudPlatform
In Kombination mit der @Conditional-Annotation kann die Konfiguration nur aktiviert werden, wenn die angegebene Cloud-Plattform vorhanden ist aktiviert.
19.@ConditiomalOnSingleCandidate
Kombinierte @Conditional-Annotation, wenn die angegebene Klasse nur eine Bean im Container hat , Oder es gibt mehrere gleichzeitig, aber die Konfiguration ist nur dann aktiviert, wenn sie die erste Wahl ist.
20.@ConfigurationProperties
wird zum Laden zusätzlicher Konfigurationen (z. B. .properties-Dateien) verwendet, die in verfügbar sind @-Konfigurationsannotationsklasse oder @Bean-Annotationsmethode. Sie können sich verschiedene Möglichkeiten ansehen, wie Spring Boot Konfigurationsdateien liest.
21.@EnableConfigurationProperties
wird im Allgemeinen mit der Annotation @ConfigurationProperties verwendet, um die Annotation @ConfigurationProperties zum Konfigurieren zu aktivieren die Bean-Unterstützung.
22.@AntoConfigureAfter
wird für die automatische Konfigurationsklasse verwendet, dh für die Anforderungen der automatischen Konfigurationsklasse zur Verwendung in einem anderen, nachdem die angegebene automatische Konfigurationsklasse konfiguriert wurde. Beispielsweise muss die automatische Konfigurationsklasse von Mybatis nach der automatischen Konfigurationsklasse der Datenquelle installiert werden.
23.@AutoConfigureBefore
wird für die automatische Konfigurationsklasse verwendet, dh für die Anforderungen der automatischen Konfigurationsklasse zur Verwendung in einem anderen Bevor die angegebene Autokonfigurationsklasse konfiguriert wird.
24.@Import
Spring 3.0 fügt Annotationen hinzu, um eine oder mehrere Konfigurationsklassen mit @Configuration-Annotationsänderungen zu importieren.
25.@IMportReSource
Spring 3.0 fügt Anmerkungen zum Importieren einer oder mehrerer Spring-Konfigurationsdateien hinzu nützlich für Spring Boot-kompatible alte Projekte. Einige Konfigurationsdateien können nicht über die Java-Konfiguration konfiguriert werden.
Das obige ist der detaillierte Inhalt vonWas sind die Kernanmerkungen von SpringBoot?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!