springboot專案部署到tomcat容器

日月星辰ACE發表於2018-06-27

springboot專案釋出到tomcat伺服器

剛剛接觸springboot,今天將一個springbootdemo專案釋出到tomcat伺服器,中間跳了一些坑,所以寫一篇部落格記錄一下,也當個筆記,防止忘記。

  • springboot
  • tomcat
  • jdk1.8
  • Lombok

前提

這裡並不講springboot專案是如何搭建的,使用idea開發工具搭建springboot專案也非常簡單,就不再贅述。然後我這個資源裡用到了lombok,因為看到之前下載過的同學說沒有get set 方法,這個都是lombok的功勞,簡化程式碼了。idea中如何使用lombok網上有很多教程,這裡也不再多說。

idea新建springboot專案並且除錯成功後,因為springboot專案預設是在內嵌的tomcat上執行的,這裡就說一下springboot專案如何釋出在外部tomcat伺服器上,包括idea開發工具中用tomcat執行。

首先pom檔案

pom檔案中打包型別修改為war包:

<packaging>war</packaging>

pom檔案中springboot-web依賴這裡,去除內嵌tomcat的依賴:

<dependency>
	<groupId>org.springframework.boot</groupId>
	<artifactId>spring-boot-starter-web</artifactId>
	<!-- 不依賴內嵌tomcat -->
          <exclusions>
		<exclusion>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-tomcat</artifactId>
		</exclusion>
	</exclusions>
</dependency>

增加修改springboot啟動類的依賴:

<!-- 排除springboot內建tomcat容器的SpringBootServletInitializer介面需要依賴 javax.servlet -->
<dependency>
	<groupId>javax.servlet</groupId>
	<artifactId>javax.servlet-api</artifactId>
	<version>3.1.0</version>
	<scope>provided</scope>
</dependency>

本地除錯整合tomcat:

<!-- 本地除錯整合tomcat -->
<dependency>
	<groupId>org.apache.tomcat</groupId>
	<artifactId>tomcat-servlet-api</artifactId>
	<version>8.0.36</version>
	<scope>provided</scope>
</dependency>

然後修改Java程式碼

修改springboot啟動類,繼承抽象類SpringBootServletInitializer,並實現configure方法:

@SpringBootApplication
@MapperScan("com.youbus.springbootdemo.dao")
public class SpringbootdemoApplication extends SpringBootServletInitializer {

	@Override
	protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
		return application.sources(SpringbootdemoApplication.class);
	}

	public static void main(String[] args) {
		SpringApplication.run(SpringbootdemoApplication.class, args);
	}
}

打War包

接下來就可以在idea的Terminal視窗中使用如下命令進行打包:

mvn clean package -Dmaven.test.skip=true

然後將打好的war包重新命名為yml檔案中context-path的名字,如下:
這裡寫圖片描述
則將war包修改為ybSpringBoot.war

至此,springboot專案釋出到tomcat上的war包已經成功打好,直接放在你伺服器的tomcat中wepapps資料夾下重啟tomcat就可以了。

訪問

按照下面的訪問路徑,修改為你伺服器的路徑和你介面的路徑就可以訪問啦!

http://www.aaa.com.cn/ybSpringBoot/hello/say

附加:資源下載

看我的下載資源裡有詳細demo,附上鍊接:https://download.csdn.net/download/gang_gang_hao/10508223

相關文章