中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

springboot項目打成war包放入tomcat中運行的詳細步驟

發布時間:2021-09-04 11:14:47 來源:億速云 閱讀:223 作者:chen 欄目:大數據

本篇內容介紹了“springboot項目打成war包放入tomcat中運行的詳細步驟”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!

1.需要將pom.xml文件的packaging設置為war。

springboot項目打成war包放入tomcat中運行的詳細步驟

2.改成war包之后,就可以直接使用maven的命令將項目打成一個war包了。

springboot項目打成war包放入tomcat中運行的詳細步驟

3.將這個war包直接放入到tomcat中運行。

springboot項目打成war包放入tomcat中運行的詳細步驟

4.啟動startup.bat,你可以發現控制臺,并沒有打印springboot啟動的信息。

springboot項目打成war包放入tomcat中運行的詳細步驟

從上面的tomcat啟動信息,可以看到springboot并沒有啟動,即spring的環境和springmvc的環境,并沒有初始化。所以是訪問不到項目的。

基于這個結果,我們在想,為什么會啟動不了springboot的環境呢?即在使用tomcat啟動我們的war包的時候,tomcat并沒有執行到我們的主類(啟動類)。

那怎樣才能讓tomcat啟動的時候,執行到我們的主類呢?

springboot項目打成war包放入tomcat中運行的詳細步驟

5.在springboot的啟動類,繼承了SpringBootServletInitializer類,重寫configure()方法;然后再使用maven的package命令重寫打war包,就可以讓tomcat啟動的時候,執行到我們的主類。

springboot項目打成war包放入tomcat中運行的詳細步驟

這個時候,我們再將打成的war放入到tomcat中運行,就可以看到已經打印了springboot啟動的信息了,即已經初始化了spring和springmvc的環境了。

6.為什么在springboot的主類繼承了SpringBootServletInitializer,tomcat就可以執行到我們的主類呢?

這個問題,就要涉及到servlet3.0的新特性了:

springboot項目打成war包放入tomcat中運行的詳細步驟

通過上圖可以知道,servlet3.0給我們提供了一個非常牛逼的規范,只要我們按照這個規范,我們就能在tomcat啟動的時候去掉web.xml,而且還能初始化spring環境。

1.定義了一個新的規范,即在資源文件的META-INF/services文件夾下面,有一個以javax.servlet.ServletContainerInitializer命名的文件,里面定義一個你自己的類的全類名。同時該類實現javax.servlet.ServletContainerInitializer接口,并重寫onStartup方法
2.在上面這個規范下,所有按照這個規范的servlet服務器,例如:tomcat,在服務啟動的時候,會自己反射執行這個類的onStartup()方法
3.通過這個新的規范,我們就不需要按照傳統的方法,需要在web.xml文件中,初始化spring等配置和環境,這樣做就能實現零配置,springboot就是按照這個思想實現零配置的。

springboot項目打成war包放入tomcat中運行的詳細步驟

這就是為什么springboot項目在使用tomcat啟動的時候,就需要實現SpringBootServletInitializer這個類,并重寫configure方法的原因了。

“springboot項目打成war包放入tomcat中運行的詳細步驟”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

隆化县| 白山市| 前郭尔| 中宁县| 黑河市| 准格尔旗| 嘉祥县| 工布江达县| 涿州市| 浦东新区| 新营市| 北海市| 贺兰县| 左权县| 祁阳县| 垫江县| 隆德县| 华阴市| 金沙县| 乌拉特前旗| 江陵县| 甘谷县| 南郑县| 金秀| 淮阳县| 永清县| 公主岭市| 甘南县| 新河县| 饶阳县| 上犹县| 乳源| 奈曼旗| 澄迈县| 丘北县| 马关县| 肥城市| 石林| 木里| 阿鲁科尔沁旗| 新余市|