Während der Verwendung von Spring Boot können Sie feststellen, dass im Projekt nur eine geringe Konfiguration erforderlich ist, um die entsprechenden Funktionen zu erfüllen, dank der modularen Konfiguration im Spring -Boot. Jeder Starter, der von in pom.xml abhängig ist, hat eine Standardkonfiguration, und diese Standardkonfigurationen reichen aus, um die normale funktionale Entwicklung zu erfüllen.
Wenn Sie die benutzerdefinierte Änderung und die Standardkonfiguration ändern müssen, bietet Spring Start einen sehr einfachen Weg. Fügen Sie einfach die entsprechende Konfiguration in Application.Properties hinzu und ändern Sie einfach. (Die Standardkonfiguration der Anwendung.
1. Ändern Sie die Standardkonfiguration
Beispiel 1. Wenn der Spring -Start Webanwendungen entwickelt, beträgt der Standard -Startport von Tomcat 8080. Bei Änderungen des Standardports müssen Sie die folgenden Datensätze in application.Properties hinzufügen:
Server.port = 8888
Starten Sie das Projekt neu und Sie können das Startprotokoll sehen: Tomcat mit Port (s): 8888 (http) Der Startport ist 8888.
Beispiel 2. Datenbankverbindungsinformationskonfiguration in der Spring -Startentwicklung (mithilfe von COM.Alibaba -Druid hier) die folgenden Datensätze in application.Properties hinzufügen:
druid.url = jdbc: mysql: //192.168.0.20: 3306/testdruid.driver-class = com.mysql.jdbc.driverdruid.username = ro otdruid.password = 123456druid.initial-size = 1druid.min-idle = 1druid.max-active = 20druid.test-on-brow = true
Die beiden oben genannten Beispiele veranschaulichen, dass Sie, wenn Sie die Standardkonfiguration im Startermodul ändern müssen, nur die Konfiguration hinzufügen müssen, die in der Anwendung geändert werden muss.
Anhang: Alle Konfigurationselemente für Anwendungen.Properties klicken, um alle Konfigurationsanweisungen für den Spring Start anzuzeigen
2. Konfiguration benutzerdefinierter Attribut
Zusätzlich zur Änderung der Standardkonfiguration in application.Properties können wir hier benutzerdefinierte Eigenschaften konfigurieren und in der Entity -Bean laden.
1. Fügen Sie benutzerdefinierte Eigenschaftskonfiguration in application.Properties hinzu
com.sam.name = samcom.sam.age = 11com.sam.desc = magical sam
2. Schreiben Sie eine Bohnenklasse und laden Sie Eigenschaften
Die SAM -Klasse muss die @Component -Annotation hinzufügen, die Feder zum Start in die Klasse scannen und zum Federbehälter hinzufügen.
Der erste: Verwenden Sie die federn unterstützte @Value (), um zu laden
Paket com.sam.demo.conf; import org.springframework.beans.factory.annotation.value; import org.springframework.stereotype.comPonent; @Value ("$ {com.sam.name}") privater String -Name; @Value ("$ {com.sam.age}") Private int Age; @Value ("$ {com.sam.desc}") private String Desc; // Getter & Setter} Der zweite Typ: Verwenden Sie @ConfigurationProperties (Präfix = ""), um das Präfix festzulegen, und für die Eigenschaften ist keine Annotation erforderlich.
Paket com.sam.demo.conf; import org.springframework.stereotype.component;/** * @Author Sam * @Since 2017/7/15 */ @component @configurationProperties (Prefix = "com.sam") öffentlicher Klassen Sam {privater String -Name; privates int Alter; private Saite Desc; // Getter & Setter} 3. Injizieren und verwenden Sie die SAM -Bohne im Controller.
Paket com.sam.demo.controller; import com.sam.demo.conf.sam; import org.springframework.beans.factory.annotation org.springframework.web.bind.annotation.restController;/** * @Author Sam * @Since 2017/7/14 */ @rastControllerPublic Class IndexController {@autowired private sam; @RequestMapping ("//index") public String index () {System.out.println (sam.getName () + "" + sam.getage () + "" + sam.getDesc ()); Rückgabe "Index"; }}Browserzugriff: http: // localhost: 8080/index, die Konsole druckt den Inhalt von SAM normal aus.
A. Detaillierte Erläuterung der Anwendung.Properties Eigenschaftskonfiguration
1. Parameterreferenz und die Verwendung der Zufallszahlenmethode
In Application.Properties können Sie sich direkt auf die Werte anderer Eigenschaften über $ {} beziehen, wie folgt:
com.sam.name = samcom.sam.age = 11com.sam.desc = $ {name} ist $ {Alter} Jahre alt. Wenn Sie zufällige Zahlen in application.Properties erhalten müssen, können Sie $ {Random} wie folgt verwenden:
#Get Random String com.sam.randomvalue = $ {random.value} #Get Random String: $ {random.value} #Get Random int: $ {random.int} #Get Random Nummern innerhalb von 10: $ {random.int (10)}# $ {random.uuid}2. Konfiguration mit mehreren Umwelt
Es kann unterschiedliche Umgebungen in der tatsächlichen Entwicklung geben, einschließlich Entwicklungsumgebung, Testumgebung und Generationsumgebung. Die Konfigurationen, die sich für jede Umgebung beziehen, können variieren, z. B. Datenbankinformationen, Portkonfiguration, lokale Pfadkonfiguration usw.
Wenn Sie jedes Mal, wenn Sie in eine andere Umgebung wechseln, application.Properties ändern müssen, ist der Betrieb sehr umständlich. Die Konfiguration mit mehreren Umgebungen wird im Spring-Boot bereitgestellt, sodass wir Umgebungen schalten.
Erstellen Sie drei neue Dateien in demselben Verzeichnis wie application.Properties:
application-dev.properties // Entwicklungsumgebungskonfigurationsdatei Anwendungstest.properties // Entwicklungsumgebungskonfigurationsdatei application-prod.properties // Produktionsumgebungskonfigurationsdatei
Die obigen drei Dateien entsprechen den Konfigurationsinhalten für Entwicklung, Test und Produktion. Der nächste Schritt ist, wie man diese Konfigurationen selektiv verweist.
Fügen Sie in application.Properties hinzu:
Spring.profiles.active = Dev#Referenz -Testkonfigurationsdatei#Spring.profiles.active = Test#Referenzproduktionskonfigurationsdatei#Spring.profiles.active = prod
Starten Sie nach dem Hinzufügen von Spring.profiles.active = Dev die Anwendung und Sie werden feststellen, dass diese Konfigurationsinformationen von Dev verwiesen werden.
Es ist zu sehen, dass die obigen drei Konfigurationsdateien dem Anwendungsformat {Profil} .Properties und das Dev in Spring.profiles.active = Dev in application.Properties das Profil in der obigen Konfigurationsdatei entsprechen. Wechseln Sie sofort nach der spezifischen Umgebung.
Beim Starten der Anwendung mit Befehlen, die das JAR -Paket ausführen, können Sie die entsprechende Konfiguration angeben.
Java-Jar Demo-0.0.1-Snapshot.jar--Spring.profiles.active = Dev
Anhang: Konfigurationsmethoden und Prioritätsstufen sind wie folgt:
A. Befehlszeilenparameter
B. JNDI -Attribute von Java: Comp/Env
C. Java -Systemeigenschaften (System.getProperties ())
D. Betriebssystemumgebungsvariablen
e. Zufälliger.* Eigenschaftswert der RandomValuePropertySource -Konfiguration
F. JAR External Application- {Profil} .Properties oder application.yml (mit Spring.Profile) Konfigurationsdatei
G. JAR Internal Application- {Profil} .Properties oder application.yml (mit Spring.Profile) Konfigurationsdatei
H. JAR EXTERNAL ANWENDUNG.PROPERTIES ODER ANWENDUNG.YML (ohne Spring.Profile) Konfigurationsdatei
ich. JAR Internal Application.Properties oder application.yml (ohne Spring.Profile) Konfigurationsdatei
J. @Propertysource in @Configuration Annotation Class
k. Standardeigenschaften, die durch SpringApplication.SetDefaultProperties angegeben sind
HINWEIS: Die Methode zum Starten einer Anwendung durch Angabe von Parametern mit den Befehlszeilenparametern kann unsicher sein. Wir können die Methode festlegen, um eine Anwendung auf diese Weise zu verbieten, wie folgt:
SpringApplication.SetAddCommandlineProperties (False);
Paket com.sam.demo; import org.springframework.boot.springapplication; import org.springframework.boot.autoconFigure.springbootApplication; @springbootApplicationPublic -class -DemoApplication {public static void Main (String [] args [] {// // // // // // // // // // // // // // //.RAPPLIKATION (DAWAPLIKATION (DAUM) (SING [] {// // // // // // // // // // // // // // // // // // // // // // //.RAPPLIKATION. args); SpringApplication SpringApplication = neue Springapplication (DemoApplication.Class); // Schild die Befehlszeile zum Festlegen der Parameter SpringApplication.SetAddCommandlineProperties (False); SpringApplication.run (Args); }}Wieder auffüllen:
In der Spring -Boot -Konfiguration unterstützt sie neben der Unterstützung von Anwendungen.
Erstellen Sie eine neue Anwendung anstelle von Application.Properties
Server: Port: 9999com: SAM: Name: Sam Alter: 11 Desc: Magical SAM
Hinweis: Port: 9999 In der Mitte befindet sich Platz. Weitere Informationen finden Sie in der YML -Syntax: Verwendung der YML -Konfigurationsdatei
Das obige ist der gesamte Inhalt dieses Artikels. Ich hoffe, es wird für das Lernen aller hilfreich sein und ich hoffe, jeder wird Wulin.com mehr unterstützen.