English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Despliegue de Tomcat de SpringBoot

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

Ejemplo

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 Boot WAR

它利用了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: 使用  标记修改最终的WAR文件名,以避免包含版本号。我们创建了一个名为 web-servicios 的WAR文件。

<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:

C:\Users\Anubhav\Documents\workspace-sts-3.9.9.RELEASE\spring-boot-war-deployment-example\target
 

Despliegue agregue el archivo WAR a Tomcat

Para desplegar el archivo WAR, siga los siguientes pasos:

Paso19: Descargue e instale   Servidor Apache Tomcat (si no se ha instalado).

Paso20: copie el archivo WAR(web-services.war)y péguelo enwebappscarpeta. En nuestro ejemplo, la ubicación de la carpeta webapps es:

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