JSP(JavaServer Pages)作為Java生態中常用的服務器端網頁技術,具有動態內容生成、可擴展性強、與Java無縫結合等優勢。
而CentOS作為一款穩定、高效、安全的Linux服務器操作系統,非常適合部署JSP應用。
想要讓JSP頁面實現動態更新加載,避免每次改動后都要重啟服務器,提高開發效率和網站可用性,就需要掌握正確的方法。
二、準備工作:部署環境搭建
在CentOS上動態加載JSP,首先必須有合適的運行環境。
一般我們使用Tomcat作為JSP的Servlet容器,搭配JDK環境。
1. 安裝JDK
sudo yum install java-11-openjdk-devel -y
檢查安裝:
java -version
確保JDK版本在1.8以上。
2. 安裝Tomcat
可以選擇下載Apache官方版本的Tomcat:
cd /usr/local
sudo wget https://downloads.apache.org/tomcat/tomcat-9/v9.0.80/bin/apache-tomcat-9.0.80.tar.gz
sudo tar -zxvf apache-tomcat-9.0.80.tar.gz
sudo mv apache-tomcat-9.0.80 tomcat9
設置環境變量(可選):
vim /etc/profile
# 添加
export CATALINA_HOME=/usr/local/tomcat9
export PATH=$PATH:$CATALINA_HOME/bin
source /etc/profile
3. 啟動Tomcat測試
cd /usr/local/tomcat9/bin
./startup.sh
訪問 http://你的服務器IP:8080,能看到Tomcat歡迎頁面即表示部署成功。
三、部署JSP應用,實現動態加載
1. 理解JSP的動態編譯機制
JSP文件在Tomcat中有一個特點:
第一次訪問時會自動編譯成Servlet類(*.java -> *.class)
JSP文件修改后,如果配置得當,Tomcat可以自動重新編譯更新Servlet
這就是JSP“動態加載”的本質。
2. 修改Tomcat配置,開啟JSP自動編譯
編輯Tomcat的 conf/web.xml 文件:
vim /usr/local/tomcat9/conf/web.xml
找到 節點中關于 jsp 的部分,確認以下參數設置:
<servlet><servlet-name>jsp</servlet-name><servlet-class>org.apache.jasper.servlet.JspServlet</servlet-class><init-param><param-name>development</param-name><param-value>true</param-value> <!-- 開啟開發模式 --></init-param><init-param><param-name>reloadable</param-name><param-value>true</param-value> <!-- 允許動態reload --></init-param>
</servlet>
說明:
development=true 表示每次請求都會檢查JSP是否更新,
reloadable=true 表示JSP或Class改動時自動重新加載。
四、JSP項目部署流程
假設你的JSP項目打包成了一個 ROOT.war 文件或者一組網頁文件。
1. 將JSP項目放入Tomcat
cd /usr/local/tomcat9/webapps
sudo rm -rf ROOT
sudo mkdir ROOT
sudo cp -r /你的項目目錄/* ./ROOT/
如果是 .war 包直接放進去,Tomcat會自動解壓。
2. 設置Tomcat熱部署優化(可選)
修改 conf/context.xml:
<Context reloadable="true">
這樣在整個Tomcat層面上支持應用自動reload。
溫馨提醒:
開發環境可開啟動態編譯,但生產環境建議關閉(避免性能浪費和安全風險)。
始終養成版本控制和定期備份的好習慣。