Heim >Java >javaLernprogramm >Was ist das Konfigurationsdateiformat von SpringBoot?
1 Konfigurationsdateiformat von Spring Boot
application.properties oder application.yml, der Hauptunterschied zwischen ihnen ist das Schreibformat.
1).properties:
springboot.user.name = testname
springboot.user.name = testname
2).yml:
springboot: user: name: testname
另外,.properties格式文件的属性是无序的,.yml 格式文件的属性是有序的,但它不支持@PropertySource注解导入配置。
2 Spring Boot的核心注解
启动类上面的注解是@SpringBootApplication
,它也是Spring Boot的核心注解,主要组合包含了以下3个注解:
@SpringBootConfiguration:组合了 @Configuration 注解,实现配置文件的功能。
@EnableAutoConfiguration:打开自动配置的功能,也可以关闭某个自动配置的选项,如关闭数据源自动配置功能:@SpringBootApplication(exclude = { DataSourceAutoConfiguration.class })。
@ComponentScan:Spring组件扫描。
3 开启Spring Boot特性的方式
1)继承spring-boot-starter-parent项目
2)导入spring-boot-dependencies项目依赖
4 运行Spring Boot的方式
1)直接执行main方法运行
2)用Maven / Gradle插件运行
3)打成jar包,通过java -jar命令直接运行
5 Spring Boot读取配置的方式
Spring Boot可以通过@PropertySource,@Value,@Environment,@ConfigurationProperties来绑定变量。
6 Spring Boot中的监视器
Spring Boot actuator是Spring启动框架中的重要功能之一。Spring Boot监视器可帮助您访问生产环境中正在运行的应用程序的当前状态。例如创建了什么bean、控制器中的映射、CPU 使用情况等等。然后可以将自动收集和审计健康状况(health)以及指标(metric)到您的应用程序中。
7 Spring Boot自动配置的原理
在Spring程序main方法中 添加@SpringBootApplication或者@EnableAutoConfiguration。会自动去maven中读取每个starter中的spring.factories文件,该文件里配置了所有需要被创建spring容器中的bean。
Spring Boot 在启动时扫描项目所依赖的JAR包,寻找包含spring.factories文件的JAR
根据spring.factories配置加载AutoConfigure类
根据@Conditional注解的条件,进行自动配置并将Bean注入Spring Context
8spring-boot-maven-plugin
spring-boot-maven-plugin提供了一些像jar一样打包或者运行应用程序的命令。
run:运行你的Spring Boot应用程序。
repackage:重新打包你的jar包或者是war包使其可执行
start和stop:管理Spring Boot应用程序的生命周期,也可以说是为了集成测试。
build-info:生成执行器可以使用的构造信息。
9使用配置文件通过Spring Boot配置特定环境的配置
比方说现在有两个配置文件application-dev.properties
和application-prod.properties
。在application.properties
中使用 spring.profiles.active=prod
即可加载application-prod.properties
springboot: user: name: testnameAußerdem sind die Eigenschaften der .properties-Formatdatei ungeordnet und die Eigenschaften der .yml-Formatdatei sind geordnet, aber das ist der Fall Die Importkonfiguration für @ PropertySource-Anmerkungen wird nicht unterstützt.
2 Die Kernanmerkungen von Spring BootDie Anmerkung zur Startup-Klasse lautet @SpringBootApplication
, also auch Spring Boot Die Kernanmerkungen, die Hauptkombination umfasst die folgenden 3 Anmerkungen:
@SpringBootConfiguration: Kombiniert die @Configuration-Annotation, um die Funktion der Konfigurationsdatei zu implementieren. @EnableAutoConfiguration: Aktivieren Sie die automatische Konfigurationsfunktion, oder Sie können eine automatische Konfigurationsoption deaktivieren, z. B. das Deaktivieren der automatischen Konfigurationsfunktion der Datenquelle: @SpringBootApplication(exclude = { DataSourceAutoConfiguration.class }) .
@ComponentScan: Federkomponenten-Scan.
#🎜🎜##🎜🎜#3 So aktivieren Sie Spring Boot-Funktionen#🎜🎜##🎜🎜##🎜🎜#1) Erben Sie das Spring-Boot-Starter-Parent-Projekt #🎜🎜##🎜🎜 # 2) Projektabhängigkeiten von Spring-Boot-Abhängigkeiten importieren #🎜🎜##🎜🎜#4 So führen Sie Spring Boot aus #🎜🎜##🎜🎜#1) Führen Sie die Hauptmethode direkt aus, um #🎜🎜##🎜🎜# auszuführen 2) Verwenden Sie den Maven/Gradle-Plug-in-Vorgang#🎜🎜##🎜🎜#3) Erstellen Sie ein JAR-Paket und führen Sie es direkt über den Befehl java -jar aus#🎜🎜##🎜🎜##🎜🎜#5 Wie Spring Boot liest die Konfiguration#🎜🎜 ##🎜🎜##🎜🎜#Spring Boot kann Variablen über @PropertySource, @Value, @Environment, @ConfigurationProperties binden. #🎜🎜##🎜🎜##🎜🎜#6 Monitor im Spring Boot #🎜🎜##🎜🎜##🎜🎜#Der Spring Boot-Aktuator ist eine der wichtigen Funktionen im Spring Boot-Framework. Mit dem Spring Boot-Monitor können Sie auf den aktuellen Status Ihrer laufenden Anwendung in Ihrer Produktionsumgebung zugreifen. Zum Beispiel, welche Beans erstellt werden, Zuordnungen in Controllern, CPU-Auslastung usw. Zustand und Metriken können dann automatisch erfasst und in Ihrer Anwendung überprüft werden. #🎜🎜##🎜🎜##🎜🎜#7 Das Prinzip der automatischen Konfiguration von Spring Boot #🎜🎜##🎜🎜##🎜🎜#Fügen Sie @SpringBootApplication oder @EnableAutoConfiguration in der Hauptmethode des Spring-Programms hinzu. Es liest automatisch die Datei spring.factories in jedem Starter in Maven, wodurch alle Beans konfiguriert werden, die im Spring-Container erstellt werden müssen. #🎜🎜##🎜🎜#Spring Boot scannt die JAR-Pakete, von denen das Projekt beim Start abhängt, und sucht nach JARs, die spring.factories-Dateien enthalten#🎜🎜##🎜🎜#Laden Sie die AutoConfigure-Klasse entsprechend der spring.factories-Konfiguration# 🎜🎜## 🎜🎜#Konfigurieren Sie die Bean entsprechend den Bedingungen der @Conditional-Annotation automatisch und fügen Sie sie in den Spring-Kontext ein.#🎜🎜##🎜🎜##🎜🎜#8spring-boot-maven-plugin#🎜🎜# #🎜🎜##🎜🎜# Das Spring-Boot-Maven-Plugin bietet einige Befehle zum Packen oder Ausführen von Anwendungen wie Jars. #🎜🎜##🎜🎜#run: Führen Sie Ihre Spring Boot-Anwendung aus. #🎜🎜##🎜🎜#repackage: Packen Sie Ihr JAR-Paket oder War-Paket neu, um es ausführbar zu machen. #🎜🎜##🎜🎜#Starten und Stoppen: Verwalten Sie den Lebenszyklus von Spring Boot-Anwendungen, was auch als Integration bezeichnet werden kann Testen. #🎜🎜##🎜🎜#build-info: Erzeugt Bauinformationen, die vom Ausführenden verwendet werden können. #🎜🎜##🎜🎜##🎜🎜#9 Verwenden Sie Konfigurationsdateien, um die Konfiguration einer bestimmten Umgebung über Spring Boot zu konfigurieren #🎜🎜##🎜🎜##🎜🎜#Zum Beispiel gibt es jetzt zwei Konfigurationsdateienapplication-dev .properties
und application-prod.properties
. Verwenden Sie spring.profiles.active=prod
in application.properties
, um die Konfiguration der Konfigurationsdatei application-prod.properties
zu laden. #🎜🎜##🎜🎜##🎜🎜#10So deaktivieren Sie eine bestimmte Autokonfigurationsklasse#🎜🎜##🎜🎜##🎜🎜#@SpringBootApplication(exclude= {Order.class})#🎜🎜##🎜 🎜 #@EnableAutoConfiguration(exclude={DataSourceAutoConfiguration.class})#🎜🎜##🎜🎜#@EnableAutoConfiguration(excludeName={Foo.class})#🎜🎜##🎜🎜##🎜🎜#11 Laden der Spring Boot Factory mode# 🎜🎜##🎜🎜##🎜🎜#Spring Framework verwendet intern einen Factory-Lademechanismus. Dieser Mechanismus wird mit SpringFactoriesLoader vervollständigt. SpringFactoriesLoader verwendet die Methode „loadFactories“, um Fabriken aus den spring.factories-Dateien im META-INF-Verzeichnis zu laden und zu instanziieren. Diese spring.factories-Dateien befinden sich in den JAR-Paketen im Klassenpfad. #🎜🎜#Das obige ist der detaillierte Inhalt vonWas ist das Konfigurationsdateiformat von SpringBoot?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!