SpringBoot應(yīng)用War包形式部署到外部Tomcat的方法
這一篇文章介紹SpringBoot應(yīng)用修改默認(rèn)打jar形式部署為打war包形式,部署到外部Tomcat。
SpringBoot應(yīng)用默認(rèn)打包成為可執(zhí)行jar模式讓我們感覺到部署的便捷,接下來給大家介紹一下SpringBoot項目打War包形式部署到外部Tomcat。
修改原有項目
1.修改項目
打開項目,修改pom文件:
1.項目中加入spring-boot-starter-web(如果是已經(jīng)加入該依賴的項目可以忽略)和spring-boot-starter-tomcat依賴。
2.packaging由jar修改為war。
3.在build內(nèi)加入finalName,這個是設(shè)置打war包名稱,可以不設(shè)置使用默認(rèn)的。
完整pom文件如下:
<?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.dalaoyang</groupId> <artifactId>springboot_tomcat</artifactId> <version>0.0.1-SNAPSHOT</version> <packaging>war</packaging> <name>springboot_tomcat</name> <description>springboot_tomcat</description> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>1.5.15.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-devtools</artifactId> <scope>runtime</scope> </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> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> </plugins> <finalName>springboot_tomcat</finalName> </build> </project>
修改啟動類,使其繼承SpringBootServletInitializer類,重寫configure方法,代碼如下:
package com.dalaoyang; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.boot.builder.SpringApplicationBuilder; import org.springframework.boot.web.support.SpringBootServletInitializer; @SpringBootApplication public class SpringbootTomcatApplication extends SpringBootServletInitializer { public static void main(String[] args) { SpringApplication.run(SpringbootTomcatApplication.class, args); } @Override protected SpringApplicationBuilder configure(SpringApplicationBuilder application) { return application.sources(SpringbootTomcatApplication.class); } }
新建一個Controller,作為測試,代碼如下:
package com.dalaoyang; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RestController; /** * @author dalaoyang * @project springboot_learn * @package com.dalaoyang * @email yangyang@dalaoyang.cn * @date 2018/8/1 */ @RestController public class Controller { @GetMapping("/") public String index(){ return "Hello , dalaoyang "; } }
啟動項目,本地訪問http://localhost:8080/,如圖:
打包部署
接下來我們只需要將項目打包部署到tomcat測試,本文以Idea打包為例,雙擊package,如圖:
觀看控制臺,等待打包完成,如圖。
將war包復(fù)制到tomcat的webapp目錄下,運行tomcat,如圖所示,tomcat啟動成功(注意tomcat端口不要和目前啟動端口沖突)。
使用瀏覽器訪問http://localhost:8080/springboot_tomcat/,結(jié)果如圖:
新建項目,直接以War形式。
新建項目
修改Packaging為War,如圖
依賴只加入一個Web依賴,如圖
一路next到底即可,然后打開項目發(fā)現(xiàn),選擇war模式后已經(jīng)自動為我們集成了spring-boot-starter-tomcat依賴,而且已經(jīng)為新建了一個ServletInitializer自動繼承了SpringBootServletInitializer并且重寫了configure,感謝我們強大的Ide,測試下去和上面的情況也是一樣可以成功的。
源碼下載 :大老楊碼云
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
基于Springboot商品進(jìn)銷存管理系統(tǒng)的設(shè)計與實現(xiàn)
本項目基于springboot實現(xiàn)一個進(jìn)銷存管理系統(tǒng),主要用戶開設(shè)網(wǎng)店的相關(guān)商品的進(jìn)貨、銷售、庫存的管理,功能比較完整,需要的可以參考一下2022-08-08如何使用MyBatis Plus實現(xiàn)數(shù)據(jù)庫curd操作
MyBatis-Plus是一個MyBatis 的增強工具,在MyBatis,的基礎(chǔ)上只做增強不做改變,為簡化開發(fā)、提高效率而生。 這篇文章主要介紹了MyBatis Plus實現(xiàn)數(shù)據(jù)庫curd操作,需要的朋友可以參考下2021-09-09Spring Cloud之服務(wù)監(jiān)控turbine的示例
這篇文章主要介紹了Spring Cloud之服務(wù)監(jiān)控turbine的示例,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-05-05IntelliJ-Idea導(dǎo)出可執(zhí)行Jar流程解析
這篇文章主要介紹了IntelliJ-Idea導(dǎo)出可執(zhí)行Jar流程解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2020-12-12Spring Boot自定義配置屬性源(PropertySource)
這篇文章主要介紹了Spring Boot自定義配置屬性源(PropertySource),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-06-06