Spring Boot-Konfigurationen

Spring Boot verwendet application.properties oder application.yml zum Konfigurieren der verschiedenen Einstellungen auf Anwendungsebene. Da wir wissen, dass Spring Boot mit den vorgegebenen Standardwerten arbeitet, die für Ihre Anwendungen sinnvoller sind. In den meisten Fällen möchten Sie die Standardwerte möglicherweise lieber durch Ihre eigenen Konfigurationen überschreiben.

In diesem Tutorial werde ich einige wichtige Eigenschaften für Spring-Boot-Konfigurationen erläutern, die häufig in der Spring-Boot-Anwendung verwendet werden. Möglicherweise möchten Sie diese Werte überschreiben.

Spring Boot-Konfigurationen

Spring Boot-Konfigurationen

Notiz: Der application.properties ist optional und Spring Boot könnte ohne diese Konfigurationsdatei ausgeführt werden.

Spring Boot-Konfigurationen

Inhaltsverzeichnis:

  • Speicherort der Eigenschaftendatei
  • Name der Anwendungskonfigurationsdatei
  • Server-Portnummer
  • Kontextpfad
  • Neuladen der Anwendung
  • Aktivieren Sie die H2-Webkonsole
  • Aktivieren Sie Aktuator-Endpunkte
  • Protokolldateikonfigurationen
  • Favicon-Bild aktivieren
  • Resolver-Konfiguration anzeigen
  • 1. Speicherort der Eigenschaftendatei

    Bevor wir uns die Konfigurationseigenschaften ansehen, sollten wir uns über den Speicherort der Eigenschaftendatei informieren. Sie müssen Ihre behalten application.properties an einem der folgenden Orte.

    Speicherorte der Spring Boot-Konfigurationsdateien:

  • /config Verzeichnis unter dem aktuellen Verzeichnis.
  • Aktuelles Verzeichnis
  • /config unter dem Klassenpfad
  • Stamm des Klassenpfads
  • Die Suche nach der Eigenschaftendatei beginnt unten in der obigen Liste. Wenn Sie Eigenschaftendateien an mehreren Speicherorten haben, überschreibt der höhere Speicherort in der obigen Liste die Dateien an den niedrigeren Speicherorten.

    Alle anderen Speicherorte als die oben genannten werden von Spring Boot nicht durchsucht, um die Konfigurationsdateien abzurufen, es sei denn, Sie ändern explizit den Speicherort der Eigenschaftendatei.

    Wenn Sie nach einem ausführlicheren Tutorial zur Spring-Boot-Konfigurationsdatei suchen, lesen Sie bitte unser Tutorial, das sich mit externen Konfigurationen für Spring Boot befasst.

    2. Name der Anwendungskonfigurationsdatei

    Standardmäßig sucht Spring Boot nach dem Dateinamen application.properties oder application.yml um die Anwendungskonfigurationen zu laden. Wenn Sie nur eine Spring-Boot-Anwendung haben, müssen Sie sich keine Gedanken über die Änderung des Namens der Konfigurationseigenschaftendatei machen. Wenn Sie jedoch über mehr als eine Spring-Boot-Anwendung verfügen, möchten Sie möglicherweise den Namen der Eigenschaftendatei ändern.

    Diese Namen werden jedoch in einem sehr frühen Stadium des Spring Boot-Starts festgelegt, sodass wir die Werte nicht direkt im aktualisieren können application.properties oder application.yml Datei. Stattdessen, wir müssen die Parameter übergeben spring.config.name Und spring.config.location als Argument beim Starten der Anwendung.
    Etwas wie das:

    $ java -jar springapp.jar --spring.config.name=myproject
    

    oder

    $ java -jar springapp.jar --spring.config.location=classpath:/my.properties,classpath:/override.properties
    

    3. Server-Portnummer

    Bei den meisten Webservern ist die Standardportnummer des Servers 8080. In manchen Fällen möchten Sie jedoch die Portnummer ändern, die von der Standardportnummer abweicht. Bitte fügen Sie die folgenden Zeilen zu Ihrem hinzu application.properties :

    server.port=7070
    

    Wenn Sie eine YAML-basierte Konfiguration verwenden:

    server:
        port: 7070
    

    Passen Sie den Server-Port programmgesteuert wie folgt an:

    @Component
    public class CustomizationBean implements EmbeddedServletContainerCustomizer {
        @Override
        public void customize(ConfigurableEmbeddedServletContainer container) {
            container.setPort(7070);
        }
    }
    

    4. Kontextpfad

    Spring Boot-Sets / als Standardkontextstammverzeichnis für die Webanwendungen, wenn Sie kein eigenes Kontextstammverzeichnis konfigurieren. Wenn Sie daran interessiert sind, den Kontextpfad zu aktualisieren, fügen Sie bitte die folgenden Zeilen in Ihrem hinzu application.properties Datei:

    server.contextPath=/webapp
    

    Wenn Sie die Yaml-Konfiguration verwenden:

    	
    server:
        contextPath:/webapp
    

    Für programmatische Änderungen fügen Sie bitte den folgenden Code hinzu:

    @Component
    public class CustomizationBean implements EmbeddedServletContainerCustomizer {
        @Override
        public void customize(ConfigurableEmbeddedServletContainer container) {
            container.setContextPath("/webapp");
        }
    }
    

    5. Neuladen der Anwendung

    Seit Spring Boot 1.3.0 lösen alle Änderungen am Klassenpfad einen Neustart der Anwendung aus. Diese Funktion wird als Teil des Spring Boot DevTools-Moduls eingeführt. Sie können diese Funktion aktivieren oder deaktivieren, indem Sie die folgenden Zeilen hinzufügen application.properties Datei:

    spring.devtools.livereload.enabled=false
    

    Wenn Sie mehr über Live-Reload und die Funktionen von Spring Boot Devtools erfahren möchten, lesen Sie bitte unser umfassendes Tutorial zum Spring Boot Devtools-Modul.

    6. Aktivieren Sie die H2-Webkonsole

    Die H2-Datenbank ist eine In-Memory-Datenbank, die aufgrund ihrer Einfachheit und einfachen Konfiguration häufig in der Entwicklungsphase der Anwendung verwendet wird. Diese Datenbank bietet ein Webkonsolenmodul zur Verwaltung der von Ihren Anwendungen verwendeten Datenbank. Mithilfe der Webkonsole kann ein Entwickler die Tabellen anzeigen und die Abfrage ausführen, um die Datenbank zur Laufzeit zu manipulieren.

    Standardmäßig deaktiviert Spring Boot die Webkonsole. Sie können den Pfad, über den auf die Webkonsole zugegriffen werden kann, aktivieren und ändern, indem Sie die folgenden Zeilen in Ihrem Verzeichnis hinzufügen application.properties:

    spring.h2.console.enabled=false 
    spring.h2.console.path=/h2-console
    

    7. Aktuator-Endpunkte aktivieren

    Eine der netten Funktionen von Spring Boot sind Aktorendpunkte. Dies ermöglicht die Metriken für Ihre Anwendungen, die für die Produktionsanwendungen sehr nützlich sind. Standardmäßig ist dies durch Spring-Boot-Konfigurationen deaktiviert. Sie können diese Funktion aktivieren, indem Sie die folgenden Zeilen in Ihre Datei einfügen application.properties:

    endpoints.enabled=true
    

    Sobald Sie den obigen Eintrag zu Ihrer Konfigurationseigenschaftendatei hinzugefügt haben, werden die Standardendpunkte aktiviert und als REST-Dienst bereitgestellt, der das JSON-Ergebnis an den Webbrowser zurückgibt.

    Bitte lesen Sie das ausführlichere Tutorial zu Spring-Boot-Aktuator-Endpunkten, das alle wichtigen Funktionen von Spring-Boot-Aktuatorkonfigurationen abdeckt.

    8. Protokolldateikonfigurationen

    Es ist sehr einfach, die Protokolldateiinformationen zu konfigurieren. Zu den gängigen Protokollierungskonfigurationen gehören der Speicherort der Protokolldatei, der Name der Protokolldatei, die Konfigurationsdatei usw. Bitte fügen Sie die folgenden Zeilen in Ihre Anwendungseigenschaftendatei ein:

    logging.config=# Location of the logging configuration file. For instance 'classpath:logback.xml' for Logback
    logging.file= # Log file name. For instance 'myapp.log'
    logging.level.*= # Log levels severity mapping. For instance 'logging.level.org.springframework=DEBUG'
    logging.path= # Location of the log file. For instance 'D:/log'
    

    Neben den oben genannten Schlüsseleigenschaften stehen viele weitere Eigenschaften zum Anpassen der Protokollierungskonfigurationen zur Verfügung. Standardmäßig unterstützt Spring Boot den LogBack-Protokollierungsmechanismus. Wir haben ein ausführliches Tutorial zu Protokollierungskonfigurationen in Spring Boot geschrieben, das es wert ist, gelesen zu werden, um ein gutes Verständnis für die Spring Boot-Protokollierung zu erlangen.

    9. Aktivieren Sie das Favicon-Bild

    Favicon ist das kleine Symbol, das oben im Browser angezeigt wird. Im Allgemeinen handelt es sich dabei um das kleine Logo der Anwendung. Fügen Sie den folgenden Eigenschafteneintrag in Ihrer Spring MVC-Anwendung hinzu, um das Favicon zu aktivieren:

    spring.mvc.favicon.enabled=true
    

    10. Resolver-Konfiguration anzeigen

    Wenn wir den View Resolver verwenden, müssen wir die Präfix- und Suffixdetails für angeben InternalResourceViewResolver. Dies kann durch Hinzufügen der folgenden Einträge erreicht werden:

    spring.mvc.view.prefix= /WEB-INF/JSP/
    spring.mvc.view.suffix= .jsp
    

    Die oben genannten Eigenschaftendateien werden für die Arbeit mit der Spring MVC-Anwendung verwendet.

    Zusammenfassung

    In diesem Tutorial habe ich Sie mit einer kurzen Erklärung durch einige der wichtigen Spring-Boot-Eigenschaftskonfigurationen zum Aktivieren und Deaktivieren von Funktionen wie Protokollierung, Aktor, Favicon, Spring MVC View Resolver, Dev-Tools-Funktionen, H2-Webkonsole usw. geführt Dies erleichtert Ihnen den Einstieg in die spezifischen Funktionen.

    Abgesehen von der obigen Liste wurden in diesem Tutorial die Schritte zum Ändern des Konfigurationsdateinamens, der Speicherorte und der Rangfolge beim Auffinden der Konfigurationsdateien beim Start von Spring Boot erläutert (Lesen Sie auch: Startereignisse von Spring Boot).

    Wenn Sie Spring Boot in Ihrer Anwendung verwenden, helfe ich Ihnen gerne bei der Lösung aller Probleme, die bei Spring Boot-Projekten auftreten. Bitte senden Sie mir eine E-Mail an Krishnas auf javabeat.net mit Ihren Fragen.

    Vielen Dank, dass Sie meinen Blog gelesen haben!! Fröhliches Lesen!!

    Kommentar verfassen

    Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

    Nach oben scrollen