English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
В этом разделе мы узнаем, как部署 приложение Spring Boot на сервере Tomcat.
Это включает три шага:
Настройте приложение Spring Boot Создание Spring Boot WAR Деплой WAR на Tomcat
Давайте создадим пример Maven, который можно部署 на Tomcat
Настройте приложение Spring Boot
Шаг 1: Откройте Spring Initializr http://start.spring.io .
Шаг 2: предоставить Группа Название. Мы предоставляем com.w3codebox。
Шаг 3: предоставить artifact ID. Мы предоставили spring-boot-war-deployment-example.
Шаг 4: добавить Spring Web зависимости
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency>
Шаг 5: Нажмите Generate (создать) кнопку. Она упаковывает все стандарты, связанные с проектом, и загружает их в нашу локальную систему jar файл.
Шаг 6: Распаковать jar файл.
Шаг 7: ИмпортСледуйте следующим шагам:
файл->导入->существующий Maven проект->следующий->просмотр->выбрать папку проекта->завершить
После импорта проекта мы можем использовать IDE Package Explorer в части можно увидеть следующую структуру каталогов.
Шаг 8: в com.w3codebox В пакете класс DemoRestController.
Внутри класса контроллера мы определяем метод, возвращающий строку 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."; } }
Шаг 9: Запускать как Java приложение SpringBootWarDeploymentExampleApplication.java файл.
Шаг 10: Откройте браузер и вызовите URL http: //localhost: 8080/hello.
Он использует поддержку Servlet 3.0 в Spring Framework и позволяет нам конфигурировать приложение при запуске servlet контейнера. Для создания WAR, предназначенного для развертывания, есть триШаг:
Расширить в основном классе SpringBootServletInitializer класс. Маркировать встроенный servlet контейнер какПредоставлен. Обернуть JAR Обновить до
Давайте реализуем эти три шага в приложении.
Шаг 11: Открыть SpringBootWarDeploymentExampleApplication.java Инициализация Servlet контекста, необходимого для Tomcat. Для достижения этой цели был расширен SpringBootServletInitializer интерфейс.
public class SpringBootWarDeploymentExampleApplication extends SpringBootServletInitializer { }
Шаг 12: перекрытие Конфигурация метод.
@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); } }
Шаг 13: Открыть pom.xml файл и отметить Servlet контейнер (Tomcat) как Предоставлен.
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-tomcat</artifactId> <scope>provided</scope> </dependency>
Шаг 14: Нам нужно развернуть WAR файл, поэтому в файле pom.xml изменить тип пакета на WAR.
<packaging>war</packaging>
Шаг 15: Использование
<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>
чтобы создать WAR-приложение Tomcat, мы выполняем команду maven clean package. После этого, в /target/abc.war (где) abc предполагается, что это Artifact Id) где мы генерируем наш WAR файл. Мы должны учитывать, что это новое настройка делает нашу Spring Boot Application независимоеприложение.
шаг 16: создать WAR файл":
нажмите правой кнопкой мыши на проект-> Запуск как-> 5 Maven Build один Редактировать конфигурацию диалоговое окно появляется на экране. 17 шаг: в цельв метке новая установкаи затем проверить Пропустить тест. Нажмите приложениеи Запусккнопка. после успешного создания WAR-файла, он будет отображать путь к WAR-файлуи сообщение УСПЕШНОЕ СТРОИТЕЛЬСТВО в консоли, как показано на рисунке. Шаг 18: копировать путьи доступ к приложению target папка. Мы нашли в целевой папке WAR-файл с именем, указанным в файле pom.xml. В нашем примере, путь: Чтобы déploié файл WAR, следуйте следующим шагам: Шаг 19: Загрузите и установите Сервер Apache Tomcat (если не установлен).C:\Users\Anubhav\Documents\workspace-sts-3.9.9.RELEASE\spring-boot-war-deployment-example\target
Déploié заключается в добавлении файла WAR в Tomcat
Шаг 20: Скопируйте файл WAR(web-services.war)И скопируйте его в
C:\Program Files\Apache Software Foundation\Tomcat 8.5\webapps
Шаг 21: Теперь откройте команду Prompt и введите следующую команду:
C:\Cd Program Files\Apache Software Foundation\Tomcat 8.5\bin C:\Cd Program Files\Apache Software Foundation\Tomcat 8.5\bin>startup
ЗапускКоманда запускает сервер Tomcat и déploié файл WAR, как показано ниже.
На следующем рисунке показано, что WAR был успешно déploié.
Шаг 23: Откройте браузер и вызовите URL http://localhost:8080/web-services/hello. Он возвращает сообщение Здравствуйте, пользователь!.