真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

SpringBoot在怎么外置Tomcat

這篇文章將為大家詳細(xì)講解有關(guān)SpringBoot在怎么外置Tomcat,文章內(nèi)容質(zhì)量較高,因此小編分享給大家做個(gè)參考,希望大家閱讀完這篇文章后對相關(guān)知識有一定的了解。

創(chuàng)新互聯(lián)建站是一家專業(yè)提供梁園企業(yè)網(wǎng)站建設(shè),專注與網(wǎng)站設(shè)計(jì)制作、成都網(wǎng)站建設(shè)、HTML5建站、小程序制作等業(yè)務(wù)。10年已為梁園眾多企業(yè)、政府機(jī)構(gòu)等服務(wù)。創(chuàng)新互聯(lián)專業(yè)的建站公司優(yōu)惠進(jìn)行中。

配置包管理文件

打開項(xiàng)目根目錄的pom.xml文件,在project標(biāo)簽下聲明打包格式為war,代碼如下所示:

 war

排除內(nèi)置tomcat

打包時(shí)默認(rèn)會將內(nèi)置的tomcat打包進(jìn)去,這就造成了沖突問題,所以此處我們需要將內(nèi)置的排除掉,在dependencies標(biāo)簽下添加下述依賴。

    org.springframework.boot   spring-boot-starter-tomcat      provided 

此處還有一個(gè)做法是在spring-boot-starter-web依賴內(nèi)排除掉依賴內(nèi)排除掉tomcat,這樣做他會把websocket相關(guān)的包也給排除掉,你項(xiàng)目內(nèi)的websocket就沒法使用了,需要手動多引入javax.websocket-api這個(gè)依賴,這個(gè)依賴的最后更新時(shí)間是2016年,所以不推薦使用這個(gè)方法。

websocket相關(guān)

既然使用了外置tomcat,那么原先使用內(nèi)置tomcat所配置的東西就可以刪除了(當(dāng)然,你不刪也是可以的,但是為了代碼規(guī)范最好還是刪掉吧),我這里刪除的東西如下:

  • pom.xml中的依賴

    org.springframework.boot   spring-boot-starter-websocket 
  • websocket的啟動配置,代碼如下

package com.lk.config;  import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.web.socket.server.standard.ServerEndpointExporter;  /**  * websocket啟動配置  */ @Configuration public class WebSocketConfig {     @Bean     public ServerEndpointExporter serverEndpointExporter() {         return new ServerEndpointExporter();     } }

設(shè)置打包名與路徑

如果不設(shè)置名字和路徑默認(rèn)的打包名會附帶帶版本號,打包路徑在當(dāng)前項(xiàng)目的的target目錄下,我們可以通過在pom.xml中的build標(biāo)簽下對其進(jìn)行自定義,代碼如下:

   

修改啟動類

接下來,我們修改下SpringBoot的啟動類,讓其繼承SpringBootServletInitializer,重寫configure方法,告訴它我們使用的是外置Tomcat,代碼如下:

@SpringBootApplication public class ChatSystemServerApplication extends SpringBootServletInitializer {  // 外置tomcat需要繼承SpringBootServletInitializer,重寫SpringApplicationBuilder  @Override  protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {   return application.sources(ChatSystemServerApplication.class);  }  public static void main(String[] args) {   SpringApplication.run(ChatSystemServerApplication.class, args);  } }

至此,我們的項(xiàng)目配置部分就完成了,我們刷新下pom.xml文件,在idea的maven工具欄點(diǎn)clean,然后點(diǎn)package,就可以打一個(gè)war包在target目錄下了。

tomcat配置

我的項(xiàng)目啟用了https,使用外置tomcat后,在application.yml中配置的https就失效了,我們需要在tomcat中重新配一下。

開啟https訪問

我們打開tomcat的conf目錄下的server.xml,找到name為Catalina的Service標(biāo)簽里的標(biāo)簽,修改port和redirectPort屬性,代碼如下:

隨后,在上述標(biāo)簽的后面加上下述代碼,讓非80端口的訪問跳轉(zhuǎn)到443端口

配置       

certificateKeystoreFile為你的證書文件,certificateKeystorePassword為你的證書文件密碼,這個(gè)密碼在keystorePass.txt文件里

配置路徑訪問

將war包放入tomcat的webapps目錄下后,我們想反問需要帶上項(xiàng)目名才可以,如果我們不想加項(xiàng)目名就能直接訪問我們的項(xiàng)目,就需要另作配置了。

在server.xml文件中,找到標(biāo)簽,在其中添加Context標(biāo)簽,代碼如下:

 Context path="" docBase="">

path: 留空則表示為域名根目錄,docBase為你的war包所在目錄

設(shè)置默認(rèn)首頁

由于我們修改了tomcat的默認(rèn)訪問頁面,所有的根目錄訪問時(shí)不會走ROOT目錄下的頁面,此時(shí)就需要在項(xiàng)目里配置一個(gè)根目錄的映射,讓其跳轉(zhuǎn)到我們指定的項(xiàng)目內(nèi)的ststic中的頁面,代碼如下:

// 默認(rèn)首頁映射 @Controller public class DefaultController {     @RequestMapping("/")     public String Welcome(){         return "forward:index.html";     } }

關(guān)于SpringBoot在怎么外置Tomcat就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學(xué)到更多知識。如果覺得文章不錯(cuò),可以把它分享出去讓更多的人看到。


當(dāng)前題目:SpringBoot在怎么外置Tomcat
文章URL:
http://weahome.cn/article/pdieci.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部