前言
記得18年初的時候,嘗試學習開發 JavaWeb 項目,剛開始搭建時候,真的是一頭霧水,使用哪個 IDE 比較好呢,目錄結構如何纔是合理的呢,Tomcat 服務器如何找到項目的根目錄呢,blabla~~到處查資料,半信半疑的嘗試,到最後成功把項目跑起來以後,成就感真的是滿滿的>_<~~現在把之前的筆記整理一下吧。
一、新建項目
我選擇的是 IntelliJ IDEA 作爲開發工具,覺得真的挺好用的。
1)初次打開 IDEA 時,會彈出下面的窗口,我們可以選擇 Create New Project 來創建一個新的項目:
或者打開後直接進入了之前創建的項目的編輯頁面,我們也可以點擊 IDEA 左上角的 File->New->Project 來創建項目:
2)然後我們可以看到下面的彈框,我們選擇搭建一個符合 Maven 約定的目錄,接着在裏面勾選 Create from archetype,然後往下拉找到 org.apache.maven.archetypes:maven-archetype-webapp ,選中它,注意要先勾選紅色框圈住的那個選項,否則選擇不了,我們點擊 Next 繼續。
3)然後就填寫 Maven 的座標和版本號了,按照自己習慣進行填寫。
4)接下來就是配置你的 Maven 的相關配置信息,默認應該是配置好的。
5)然後配置你的項目的名稱和路徑的相關信息,默認是填寫了的。最後就是點 Finish ,到此不出意外的話就應該創建成功了。
6)我們可以看到新建項目成功後,會看到如下界面。也會看到IDEA右下角會彈出個小窗口,我們可以選中 Enable Auto-Import ,這樣以後更改 pom 文件後就會自動下載相關的依賴包了。
二、目錄骨架配置
1)項目新建好以後,可以看到項目的目錄結構如下圖,還不符合 Maven 約定的目錄結構。
2)需要在 main 文件夾下建立 java 文件夾和 resources 文件夾;在 src 文件夾下建立 test 文件夾,並在 test 下建立 java 文件夾和 resources 文件夾。當然如果此時我們想在 src/main/java 文件夾下創建 class 文件以及 packages ,是無法創建的。解決方法可以參考下文(http://blog.csdn.net/qq_27093465/article/details/52912444)。
3)把 main 目錄下的 java 目錄標識爲 Sources Root 。
4)把 main 目錄下的resources 標識爲 Resources Root 。
5)把 test 目錄下的 java 目錄標識爲 Test Sources Root 。
6)把 test 目錄下的 resources 目錄標識爲 Test Resources Root 。
7)配置完以後的項目目錄骨架如下圖:
三、修改web.xml
maven 構建的 web 項目,使用的 webapp 版本比較低,默認爲 2.3,不支持servlet的註解使用。我們需要修改版本爲 3.1 。把 webapp 目錄下的 web.xml 文件修改爲以下的代碼:
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
version="3.1"
metadata-complete="true">
</web-app>
四、配置Tomcat服務器
1)爲了讓項目正常跑起來,我們還需要配置 Tomcat 服務器。點擊下圖紅框處:
2)我們可以看到如下的彈框界面,然後點擊左上角的 + ,選中 Tomcat Server->Local 。
3)填寫 Tomcat 服務器的相關配置,如名稱、Tomcat 服務器版本、配置啓動端口等,可參考下圖配置:
4)我們可以看到上圖的彈框底部有個 Warning ,需要進行解決。選中 Deployment ,再點擊右側的 + ,在彈框中選中項目部署時的打包方式爲 war 包的打包方式,如下圖:
然後分別點擊 Apply 和 OK 即可。
五、啓動項目
1)至此,一個簡單的基於 Maven 的 JavaWeb 項目就搭建完畢了,我們可以點擊下圖的綠色三角形來運行項目:
2)啓動完成後,會自動跳到瀏覽器,打開一個新的標籤頁,顯示如下:
參考鏈接:
https://blog.csdn.net/Lucky22Amin/article/details/82929627
http://blog.csdn.net/qq_27093465/article/details/52912444