Conteneur Web intégré : Le serveur (Tomcat) est intégré à l'application, et il n'est pas nécessaire de configurer le serveur en externe
Le projet SpringBoot est démarré et il s'avère qu'il s'agit d'une application Web, et le package de scénarios Web est introduit ----- tel que : Tomcat
L'application Web crée une version Web du conteneur IOC ServletWebServerApplicationContext
ServletWebServerApplicationContext Au démarrage, recherchez ServletWebServerFactory (l'usine de serveur Web de Servlet. , utilisé pour produire des serveurs Servlet)
ServletWebServerFactory Il existe de nombreuses usines de serveurs Web en bas par défaut
La couche inférieure sera automatiquement configurée, la classe de configuration automatique ServletWebServerFactoryAutoConfiguration
ServletWebServerFactoryAutoConfiguration importe la classe de configuration de l'usine ServletWebServerFactoryConfiguration
ServletWebServerFactoryConfiguration class
Détermine dynamiquement quelle configuration de serveur Web est importée dans le système. Si le package
importe les dépendances Tomcat, il mettra automatiquement une usine de serveur Tomcat. . TomcatServletWebServerFactory crée la fabrique de serveur Tomcat pour nous. Mettez simplement notre méthode de démarrage manuel du serveur dans le framework.
1. Changer de serveur Web
@Override public WebServer getWebServer(ServletContextInitializer... initializers) { if (this.disableMBeanRegistry) { Registry.disableRegistry(); } Tomcat tomcat = new Tomcat(); File baseDir = (this.baseDirectory != null) ? this.baseDirectory : createTempDir("tomcat"); tomcat.setBaseDir(baseDir.getAbsolutePath()); Connector connector = new Connector(this.protocol); connector.setThrowOnFailure(true); tomcat.getService().addConnector(connector); customizeConnector(connector); tomcat.setConnector(connector); tomcat.getHost().setAutoDeploy(false); configureEngine(tomcat.getEngine()); for (Connector additionalConnector : this.additionalTomcatConnectors) { tomcat.getService().addConnector(additionalConnector); } prepareContext(tomcat.getHost(), initializers); return getTomcatWebServer(tomcat); }
2. Personnaliser les règles du serveur
Méthode 1 : Modifier le fichier de configuration sous le serveurServerProperties.classserveur .undertow.accesslog.dir=/tmp
Méthode 2 : Personnaliser ConfigurableServletWebServerFactory
Méthode 3 : Personnaliser ServletWebServerFactoryCustomizer Customizer
Fonction : Liez la valeur du fichier de configuration à ServletWebServerFactory
SpringBoot : Customizer Transformer, vous pouvez personnaliser XXX règlesCe qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!