English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
En esta sección, aprenderemos cómo desplegar aplicaciones Spring Boot en el servidor Tomcat Server.
Incluye tres pasos:
configurar aplicación Spring Boot 创建Spring Boot WAR Desplegar WAR en Tomcat
Vamos a crear un ejemplo Maven que se pueda desplegar en Tomcat
configurar aplicación Spring Boot
Paso1: Abrir Spring Initializr http: //start.spring.io .
Paso2: proporciona Grupo Nombre. Hemos proporcionado com.w3codebox.
Paso3: proporciona artefacto ID. Hemos proporcionado spring-boot-war-deployment-ejemplo.
Paso4: agregar Spring Web dependencias
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency>
Paso5: hacer clic Generar (generado) botón. It encapsula todas las especificaciones relacionadas con el proyecto y las descarga en nuestro sistema local jar 文件。
Paso6: extraer archivos jar.
Paso7: importar,por favor siga los siguientes pasos:
archivo-> importar-> proyecto Maven existente-> siguiente-> explorar-> seleccionar carpeta del proyecto-> completar
Después de importar el proyecto, podemos ver en el IDE Explorador de paquetes Podemos ver la siguiente estructura de directorios.
Paso8: En el paquete com.w3codebox En 创建Controller clase. Creamos una llamada Clase DemoRestController.
En el interior de la clase controladora, definimos un método que devuelve una cadena de caracteres hello().
DemoRestController.java
package com.w3codebox; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RestController; @RestController public class DemoRestController { @GetMapping("/hello") public String hello() { return "Hello User, have a nice day."; } }
Paso9: 作为Java应用程序运行 SpringBootWarDeploymentExampleApplication.java 文件。
Paso10: Abra el navegador y llame a la URL http: //localhost: 8080/hello。
它利用了Spring Framework的Servlet 3.0支持,并允许我们在Servlet容器启动时配置应用程序。要创建用于部署的WAR,有 三个步骤:
在主类中扩展 SpringBootServletInitializer 类。 将嵌入式servlet容器标记为已提供. 将包装 JAR 更新为
让我们在应用程序中实现上述三个步骤。
Paso11: 打开 SpringBootWarDeploymentExampleApplication.java 文件并初始化Tomcat所需的Servlet上下文。为实现相同目的,扩展了 SpringBootServletInitializer 接口。
public class SpringBootWarDeploymentExampleApplication extends SpringBootServletInitializer { }
Paso12: 覆盖 Configure 方法。
@Override protected SpringApplicationBuilder configure(SpringApplicationBuilder application) { return application.sources(SpringBootWarDeploymentExampleApplication.class); }
SpringBootWarDeploymentExampleApplication.java
package com.w3codebox; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.boot.builder.SpringApplicationBuilder; import org.springframework.boot.web.servlet.support.SpringBootServletInitializer; @SpringBootApplication public class SpringBootWarDeploymentExampleApplication extends SpringBootServletInitializer { @Override protected SpringApplicationBuilder configure(SpringApplicationBuilder application) { return application.sources(SpringBootWarDeploymentExampleApplication.class); } public static void main(String[] args) { SpringApplication.run(SpringBootWarDeploymentExampleApplication.class, args); } }
Paso13: 打开 pom.xml 文件,并将Servlet容器(Tomcat)标记为 已提供.
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-tomcat</artifactId> <scope>provided</scope> </dependency>
Paso14: 我们需要部署 WAR 文件,因此在pom.xml文件中将包类型更改为WAR。
<packaging>war</packaging>
Paso15: 使用
<finalName>web-services</finalName>
pom.xml
<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.w3codebox</groupId> <artifactId>spring-boot-war-deployment-example</artifactId> <version>0.0.1-SNAPSHOT</version> <packaging>war</packaging> <name>spring-boot-war-deployment-example</name> <description>Demo project for Spring Boot</description> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.2.2.RELEASE</version> <relativePath/> <!-- lookup parent from repository --> </parent> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> <java.version>1.8</java.version> </properties> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-tomcat</artifactId> <scope>provided</scope> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency> </dependencies> <build> <finalName>web-services</finalName> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> </plugins> </build> </project>
Para construir una aplicación WAR de Tomcat que se pueda desplegar, ejecutamos maven clean package. Después de eso, en /target/abc.war (donde abc asumido como Artifact Id) generamos nuestro archivo WAR. Deberíamos considerar que esta nueva configuración hace que nuestra Aplicación Spring Boot sea No independienteaplicación.
Paso16: Crear archivo WAR":
Haga clic derecho en el proyecto-> Ejecutar como-> 5 compilación Maven un Editar configuración Un cuadro de diálogo aparece en la pantalla. paso17pasos: en objetivoetiqueta donde escribir instalación nuevay luego verificar Saltar la pruebaHaga clic en Aplicary Ejecutarbotón. Después de crear con éxito el archivo WAR, se mostrará ruta del archivo WARy mensajes BUILD SUCCESS En la consola, como se muestra en la siguiente imagen. Paso18: Copiar rutay acceder a la aplicación en la target Carpeta. Encontramos el archivo WAR con el nombre especificado en el archivo pom.xml en la carpeta de destino. En nuestro caso, la ruta es: Para desplegar el archivo WAR, siga los siguientes pasos: Paso19: Descargue e instale Servidor Apache Tomcat (si no se ha instalado).C:\Users\Anubhav\Documents\workspace-sts-3.9.9.RELEASE\spring-boot-war-deployment-example\target
Despliegue agregue el archivo WAR a Tomcat
Paso20: copie el archivo WAR(web-services.war)y péguelo en
C:\Program Files\Apache Software Foundation\Tomcat 8.5\webapps
Paso21: Ahora abra el símbolo del sistema y escriba el siguiente comando:
C:\Cd Program Files\Apache Software Foundation\Tomcat 8.5\bin C:\Cd Program Files\Apache Software Foundation\Tomcat 8.5\bin>startup
InicioEjecute el comando para iniciar el servidor Tomcat y desplegar el archivo WAR, como se muestra a continuación.
La siguiente imagen muestra que el WAR se ha desplegado correctamente.
Paso23: Abra el navegador y llame a la URL http://localhost:8080/web-servicios/hello. Regresa el mensaje Hola, usuario!.