Maison > Java > javaDidacticiel > Comment utiliser le conteneur Web intégré SpringBoot

Comment utiliser le conteneur Web intégré SpringBoot

PHPz
Libérer: 2023-05-13 23:34:04
avant
1629 Les gens l'ont consulté

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

Principe

  • 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

Comment utiliser le conteneur Web intégré SpringBoot

  • 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

Comment utiliser le conteneur Web intégré SpringBoot

  • 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.

  • Application
  • 1. Changer de serveur Web

  • Exclure le serveur Tomcat et importer la dépendance Undertow
	@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);
	}
Copier après la connexion

2. Personnaliser les règles du serveurComment utiliser le conteneur Web intégré SpringBoot

Méthode 1 : Modifier le fichier de configuration sous le serveur

ServerProperties.class

serveur .undertow.accesslog.dir=/tmp

Méthode 2 : Personnaliser ConfigurableServletWebServerFactory

Méthode 3 : Personnaliser ServletWebServerFactoryCustomizer Customizer

Fonction : Liez la valeur du fichier de configuration à ServletWebServerFactoryComment utiliser le conteneur Web intégré SpringBoot

SpringBoot : Customizer Transformer, vous pouvez personnaliser XXX règles

Ce 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!

Étiquettes associées:
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers numéros
Modèle Web
Depuis 1970-01-01 08:00:00
0
0
0
L'icône Web initiale
Depuis 1970-01-01 08:00:00
0
0
0
Java peut-il être utilisé comme backend du Web ?
Depuis 1970-01-01 08:00:00
0
0
0
Quelle est la sécurité du site Web ?
Depuis 1970-01-01 08:00:00
0
0
0
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal