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

Tomcat-Deployment in SpringBoot

In diesem Abschnitt werden wir lernen, wie man eine Spring Boot-Anwendung auf dem Tomcat Server bereitstellt.

Es umfasst drei Schritte:

Stellen Sie die Spring Boot-Anwendung ein 创建Spring Boot WAR WAR auf Tomcat bereitstellen

Beispiel

Lassen Sie uns ein Maven-Beispiel erstellen, das auf Tomcat bereitgestellt werden kann

Stellen Sie die Spring Boot-Anwendung ein

Schritte1: Öffnen Sie Spring Initializr http: //start.spring.io .

Schritte2: bereithält Group Name. Wir bieten com.w3codebox.

Schritte3: bereithält Artifact ID. Wir bieten spring-boot-war-deployment-example。

Schritte4: hinzufügen Spring Web Abhängigkeiten

<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>

Schritte5: Klicken Generate (Erstellen) Button. Es verpackt alle Normen, die mit dem Projekt zusammenhängen, und lädt sie in unserem lokalen System herunter jar 文件。

Schritte6: Extrahieren jar-Datei.

Schritte7: Importieren,bitte befolgen Sie die folgenden Schritte:

Datei->Importieren->Bestehendes Maven-Projekt->Nächste->Durchsuchen->Projektordner auswählen->Abgeschlossen

Nachdem das Projekt importiert wurde, können wir im IDE Package Explorer können wir die folgende Verzeichnisstruktur sehen.

Schritte8: Im Paket com.w3codebox In der Datei erstellen wir eine Controller-Klasse. Wir erstellen eine Namens Klasse DemoRestController.

In der Controller-Klasse definieren wir eine Methode, die einen String zurückgibt. 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.";
}
}

Schritte9: 作为Java应用程序运行 SpringBootWarDeploymentExampleApplication.java 文件。

Schritte10: Öffnen Sie den Browser und rufen Sie die URL http: //localhost: 8080/hello。

注意: 在进行下一步之前,请确保应用程序运行正常。

创建Spring Boot WAR

它利用了Spring Framework的Servlet 3.0支持,并允许我们在Servlet容器启动时配置应用程序。要创建用于部署的WAR,有 三个步骤:

在主类中扩展 SpringBootServletInitializer 类。 将嵌入式servlet容器标记为bereitet. 将包装 JAR 更新为

让我们在应用程序中实现上述三个步骤。

Schritte11: Öffnen SpringBootWarDeploymentExampleApplication.java 文件并初始化Tomcat所需的Servlet上下文。为实现相同目的,扩展了 SpringBootServletInitializer 接口。

public class SpringBootWarDeploymentExampleApplication extends SpringBootServletInitializer
{
}

Schritte12: 覆盖 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);
}
}

Schritte13: Öffnen pom.xml Datei bereitstellen und den Servlet-Container (Tomcat) als bereitet.

<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
<scope>provided</scope>
</dependency>

Schritte14: Wir müssen WAR Datei, daher wurde im pom.xml die Paketart in WAR geändert.

<packaging>war</packaging>

Schritte15: verwendet  Markieren Sie den endgültigen WAR-Dateinamen, um die Versionsnummer zu vermeiden. Wir haben ein Projekt web-Dienste WAR-Datei.

<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-Beispiel</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>war</packaging>
<name>spring-boot-war-deployment-Beispiel</name>
<description>Demo-Projekt für Spring Boot</description>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.2.2.RELEASE</version>
<relativePath/> <!-- suchen Sie den Elternteil aus dem 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>

um ein WAR-Anwendung für Tomcat zu erstellen, führen wir maven clean paket aus. Nachdem dies geschehen ist, wird /target/abc.war (wobei abc vorausgesetzt, dass Artifact Id) unser WAR-Datei generiert wird. Wir sollten berücksichtigen, dass diese neue Einstellung unsere Spring Boot Application zu Nicht unabhängigAnwendung.

Schritte16: Erstellen WAR Datei":

Rechtsklicken Sie auf das Projekt-> Run As-> 5 Maven Build

eine   Edit Configuration Dialog wird auf dem Bildschirm angezeigt.

Der17Schritt: in  Zielin der Registerkarte  Neu installiertund überprüfen Sie  Test überspringen. Klicken Sie nacheinander auf  Anwendungund  AusführenSchaltfläche.

wird angezeigt, nachdem die WAR-Datei erfolgreich erstellt wurde   WAR-Dateipfadund eine Nachricht   BUILD SUCCESS wie im folgenden Screenshot im Konsolenfenster gezeigt.

Schritte18: Kopieren  anund den Zugriff auf die Anwendungspfad   target Ordner. Wir haben im Zielordner den WAR-Datei gefunden, der dem in der pom.xml angegebenen Namen entspricht. In unserem Beispiel ist der Pfad:

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

Deployment: Fügen Sie die WAR-Datei zu Tomcat hinzu

Um die WAR-Datei bereitzustellen, befolgen Sie die folgenden Schritte:

Schritte19: Herunterladen und Installieren   Apache Tomcat Server (wenn noch nicht installiert).

Schritte20: Kopieren Sie die WAR-Datei(web-services.war)und fügen Sie ihn inwebappsOrdner. In unserem Beispiel befindet sich der webapps-Ordner an:

C:\Program Files\Apache Software Foundation\Tomcat 8.5\webapps


Schritte21: Öffnen Sie den Befehlszeilen-Editor und geben Sie die folgenden Befehle ein:

C:\Cd Program Files\Apache Software Foundation\Tomcat  8.5\bin
C:\Cd Program Files\Apache Software Foundation\Tomcat  8.5\bin>startup


StartenStarten Sie den Tomcat-Server und legen Sie die WAR-Datei bereit, wie folgt.

Das folgende Bild zeigt, dass WAR erfolgreich bereitgestellt wurde.

Schritte23: Öffnen Sie den Browser und rufen Sie die URL http://localhost:8080/web-Dienste/hello. Es gibt eine Nachricht zurück Hallo, Benutzer gut!.