Java Web 系列文章:
前言
創建Java Web工程屬于入門的知識,網上的文章也很多。本次基于最新的IDEA來闡述如何快速創建Java Web工程,并部署到本地最終通過瀏覽器訪問,希冀通過本篇文章讓大家對Java Web有個最直觀的認識。
通過本篇文章,你將了解到:
- 什么是Java Web?
- Java項目轉為Java Web
- 通過Maven創建Java Web
- 如何部署服務到Tomcat中?
- 總結
1. 什么是Java Web?
用三張圖說明:
我們手機上的App各式各樣,他們的共同點之一是隨時能夠刷新內容,靠的就是每個App都接上了互聯網,可以從網上獲取最新內容。
對應到代碼術語里的是:前端<--->服務端交互。
當前最常用的交互協議是TCP/IP,使用的應用層協議是HTTP協議,如下:
前端作為Http Client,服務端作為Http Server,共同為用戶提供服務。
繼續演變如下圖:
客戶端引入Http SDK,服務端引用Http SDK,通信交由該SDK負責。
對于服務端來說,只需要專注于寫具體的業務邏輯代碼,并根據計算得的數據渲染出前端頁面,最后返回給客戶端,我們通常稱此類的應用為Web應用。
而Java Web 是指使用 Java 技術構建 Web 應用程序的開發領域,它通常包括如下內容:
- Servlet:用于處理網絡請求和生成響應
- JSP:用于動態生成網頁的內容
- Tomcat:用于運行Servlet并提供Http 基礎服務(Http Server)
- 數據庫:用于持久化數據
因此一個最簡單的Web應用運行流程為:
接收客戶端請求-->處理請求-->讀寫數據庫-->返回處理后的數據-->渲染到頁面-->生成響應給客戶端
接下來我們探索如何快速創建Java Web項目,主要有兩種方式:
- Java項目轉為Java Web
- 通過Maven創建Java Web
2. Java 項目轉為Java Web
IDEA 版本:IntelliJ IDEA 2024.3.2 (Ultimate Edition)
-
新建項目,選擇Java,輸入項目名,此處使用的是Maven方式依賴
image.png -
創建成功后,查看Java項目結構
image.png
有一個入口函數,就是熟悉的Main函數,當我們運行該函數就可以看到打印,如此一個最簡單的Java工程搭建完成。
-
引入Web依賴
上述步驟僅僅只是創建了純Java項目,現在需要使它變為Java Web項目,需要添加對應的依賴。
打開項目結構:
image.png
選擇添加Web模塊:
選擇之后點確定即可。
此時再來查看項目的結構。
可以看出,多出了個web的目錄,不過沒有視圖文件。
在web目錄上右鍵,選擇新建JSP文件:
新建后修改內容:
可以看出,JSP和HTML結構差不多,只是它里面可以插入Java代碼進行動態修改界面。
- 引入Tomcat
經過上述步驟,我們創建好了Java Web項目,現在想讓這個項目跑起來。根據之前的分析,我們現在只是搭建好了服務,還需要借助Http Server來幫助我們收發Http請求,此處使用最常用的Web 容器:Tomcat。
先下載Tomcat:
官網:https://tomcat.apache.org/index.html
根據不同的平臺下載對應的包,解壓即可。
編輯運行配置:
選擇本地的Tomcat:
找到之前下載的Tomcat,設置為Server,其他可暫時不用動。
可以看到右下角有個提示,點擊fix按鈕。
跳轉后選擇新建artifacts:
最后一路點擊確定按鈕。
回到工程后就會發現配置構建多了Tomcat選項:
此時我們直接點擊運行按鈕,項目就會部署到Tomcat里,自動跳轉到瀏覽器訪問:
如此一來,最簡單的沒有任何邏輯的Java Web搭建并運行成功,后續就可以完善數據的輸入輸出,完善頁面的顯示。
3. 通過Maven創建Java Web
上面的步驟還是有點繁瑣,現在我們的目的很明確,直接創建Java Web項目,而不是通過Java項目再轉Java Web項目。
-
新建項目,選擇Maven Archetype
image.png
確定后查看項目結構:
此時Java Web目錄已經生成,可以看出此種方式比上一種方式快捷很多。
-
引入Tomcat
與上一種方式類似:指定Tomcat與Deployment。
image.png
此時運行項目:
成功展示頁面。
通過比較創建Java Web的兩種方式,第二種方式便捷了許多,推薦大家使用第二種方式創建Java Web項目。
4. 如何部署服務到Tomcat中?
上述我們都是直接點擊IDEA里的運行按鈕直接部署,觀察項目編譯產物:
產物放在target目錄下,當我們點擊IDEA的運行按鈕時,Tomcat將會加載target下的文件。
當客戶端發起請求時,Tomcat將會尋找到此處最終將UI返回給客戶端。
可以看出,此時的target目錄并沒有在Tomcat目錄下,那如何把target放在Tomcat目錄下呢?
分兩步:
-
構建War包
image.png
構建之后查看target目錄,多了一個.war包。
將War包放到Tomcat目錄下
找到Tomcat安裝目錄下的webapps,比如我的目錄:/usr/local/apache-tomcat-9.0.96/webapps
將war包拷貝到該目錄下。啟動Tomcat
找到Tomcat安裝目錄下的,比如我的目錄:/usr/local/apache-tomcat-9.0.96/bin
執行命令啟動tomcat(可能需要管理員權限):
mac/linux 下命令:./startup.sh
windows 下命令:./startup.bat
啟動后查看webapps目錄:
可以看出,.war包被自動解壓了。
-
通過瀏覽器訪問Java Web
image.png
注意此時的路徑是webapps下對應的.war包解壓后的目錄名。
5. 總結
以上我們實現了最簡單的Java Web項目的創建到部署的功能,接下來我們會往里面添加實現邏輯,比如接收客戶端的傳值、接收客戶端拉取數據等功能,讓大家逐漸了解Java Web開發流程。
下篇將重點分析Servlet的編寫、運行過程,敬請期待。
如果您覺得有幫助,記得一鍵三連哦~ 感謝感謝再感謝~
項目地址 持續維護中。