In diesem Artikel wird die Tomcat -Konfiguration des eingebetteten Containers im Spring -Boot eingeführt und teilt sie wie folgt mit Ihnen mit:
Standardbehälter
Mit dem Standard -Webprogramm von Spring Boot ermöglicht Tomcat eingebettete Container -Tomcat an Port 8080, und der Standard -ServletPath ist / durch die Änderung des Port- und Kontextpfads. Im Federschuh ist seine Modifikationsmethode sehr einfach.
Konfigurieren Sie in der Ressourcendatei:
server.port = 9090 server.contextPath =/lkl
Start Spring Stiefel
2015-10-04 00: 06: 55.768 Info 609 --- [Main] oswshandler.SimpleUrlhandlermaping: Zugeordnete URL-Pfad [/**/favicon.ico] auf Handler des Typs [Klasse org.springFramework.web.Servlet.Resource.Resource.Resource.ResourceHttprequesthere] 2015-10-0-04.04 00: 06: 55.844 Info 609 --- [Main] OsjeaAntationMbeanExporter: Registrieren Sie Bohnen für JMX-Exposition auf Startup2015-10-04 00: 06: 55.928 Info 609 --- [Main] sbcettomcatembedeservletcontaN: Tomcat (Sbcettomcatembedinged) (SBCATMATEMBED) (Httel) (Sbcettomcatembedeservletcontaner: Tomcat) (Sbcettomcatembedesge. 00: 06: 55.930 Info 609 --- [Main] com.lkl.springboot.Application: Die Anwendung in 3,906 Sekunden gestartet (JVM für 4.184)
Es ist ersichtlich, dass der Höranschluss 9090 durch Ausführung http: // localhost: 9090/lkl/Springboot/liaokailin erfolgreich abgerufen wird.
Benutzerdefinierte Tomcat
In den tatsächlichen Projekten erfüllt die einfache Konfiguration von Tomcat -Ports definitiv nicht die Anforderungen aller, sodass Sie die Tomcat -Konfigurationsinformationen an die flexible Steuerung von Tomcat anpassen müssen.
Nehmen Sie das Beispiel für die Definition der Standardcodierung
Paket com.lkl.springboot.container.tomcat; import org.springframework.boot.context.Embedded.EmbeddedServletContainerFactory; org.springFramework.context.annotation.bean; import org.springframework.context.annotation Tomcatconfig {@Bean public EmbeddedServletContainerFactory servletContainer () {tomcatembeddedServletContainerFactory tomcat = new tomcatembeddedServletContainerFactory (); tomcat.seturiencoding ("utf-8"); Tomcat zurückgeben; }}Erstellen Sie die Bohne von EmbeddedServletContainerFactory und nach dem Erhalten der TomcatembeddedServletContainerFactory-Instanz können Sie Tomcat festlegen. Zum Beispiel ist die Codierung hier auf UTF-8 eingestellt.
SSL -Konfiguration
Ein Zertifikat erstellen
keytool -genkey -alias springboot -keyalg rsa -keystore/user/liaokailin/software/ca1/keystore set password 123456
Stellen Sie sicher, dass das Zertifikat in Tomcat korrekt ist
Ändern Sie die Datei tomcat/conf/server.xml
<Connector protocol="org.apache.coyote.http11.Http11NioProtocol" port="8443" maxThreads="200" scheme="https" secure="true" SSLEnabled="true" keystoreFile="/Users/liaokailin/software/ca1/keystore" keystorePass="123456" ClientAuth = "False" sslProtocol = "tls"/>
Starten Sie Tomcat und besuchen Sie http: // localhost: 8443
Springstiefel eingebettete Tomcat SSL
Konfigurieren von Ressourcendateien
server.port = 8443Server.ssl.enabled = tueserver.ssl.keyalias = Springbootserver.ssl.Keypassword = 123456Server.SSL.Keystore =/Users/Liaokailin/Software/Ca1/Keystore
Start Spring Stiefel
Besuchen Sie https: // localhost: 8443/springboot/helloWorld
Konfiguration zur Überwachung von Mehrports
Nach dem Start von SSL können Sie nur zu HTTPS gehen und können über HTTP nicht darauf zugreifen. Wenn Sie mehrere Ports anhören möchten, können Sie Coding verwenden, um es zu implementieren.
1. Melden Sie sich die vorherige SSL -Konfiguration an und setzen Sie den Konfigurationsserver fest.port = 9090
2. Modifizieren Sie tomcatconfig.java
Paket com.lkl.springboot.container.tomcat; import java.io.file; import org.apache.catalina.connector.connector; org.springframework.boot.context.embedded.embededdServletContainerFactory; import org.springframework.boot.context.embeded.tomcat.tomcatembededdeddedServletContainerFactory; org.springframework.context.annotation.Configuration;/** * tomcat Configuration* @author liaokailin * @version $Id: TomcatConfig.java, v 0.1 October 4, 2015 liaokailin Exp $ */@Configurationpublic class TomcatConfig { @Bean public EmbeddedServletContainerFactory servletContainer() Oder tomcat.seturiencoding ("utf-8"); tomcat.addadditionaltomcatConnectors (CreateStlConnector ()); Tomcat zurückgeben; } private Connector createStLConnector () {Connector Connector = New Connector ("org.apache.coyote.http11.http11nioprotocol"); Http11nioprotocol Protocol = (http11nioprotocol) Connector.getProtocolHandler (); try {file trustStore = new Datei ("/user/liaokailin/software/ca1/keystore"); Connector.SetScheme ("https"); protocol.setsSlenabled (true); Connector.SetSecure (true); Connector.Setport (8443); protocol.setKeyStorefile (TrustStore.getabsolutepath ()); Protocol.SetKeyStorePass ("123456"); Protocol.setKeyalias ("Springboot"); Rückgabeanschluss; } catch (Ausnahme ex) {werfen Sie neue IllegalStateException aus ("kann nicht zugreifen Keystore: [" + "Keystore" + "]", ex); }}} Fügen Sie mehrere Hörverbindungen über die AddadDitionAltomcatConnectors -Methode hinzu. Zu diesem Zeitpunkt können Sie den HTTP 9090 -Port und den HTTPS 8443 -Port verwenden.
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.