jsp被淘汰本身並不是因為技術落後的原因,它之所以被淘汰是因為行業趨勢;現在強調前後端分離,前端寫前端的代碼,後端寫後端的代碼,沒有必要將前端和後端程式碼融合在一起,所以jsp使用就受限了。
jsp出現的原因
jsp這個技術的出現是為了解決一個什麼問題?
先看如下情況:
在Java程式碼中,伺服器要回應一個HTML頁面給瀏覽器,需要將標籤拼接在程式碼中。
這樣一操作下來就會顯得十分地繁瑣,操作麻煩不說,閱讀性還差。
那有沒有什麼方法可以解決這個問題呢?
jsp技術就應運而生了,在jsp檔案中,既能寫Java程式碼,又能寫HTML程式碼,特別地厲害。
jsp定義
JSP全名為Java Server Pages,翻譯為java伺服器頁面,其本質是簡化的Servlet。
它是由Sun公司倡導、許多公司參與一起建立的一種動態網頁技術標準。
大白話就是一個既能寫Java程式碼又能書寫HTML程式碼的檔案。
jsp為什麼被淘汰了?
jsp被淘汰本身並不是因為技術落後的原因,它之所以被淘汰是因為產業趨勢。
現在強調前後端分離,前端寫前端的程式碼,後端寫後端的程式碼,沒有必要將前端和後端程式碼融合在一起,所以jsp使用就受限了。
當然也不是完全就沒人用了,只是用的少了。
使用 JSP 的痛點:
#動態資源和靜態資源全部耦合在一起,無法做到真正的動靜分離。伺服器壓力大,因為伺服器會收到各種http請求,例如css的http請求、js的、圖片的、動態程式碼的等等。一旦伺服器出現狀況,前後台一起玩完,使用者體驗極差。
前端工程師做好html後,需要由Java工程師來將html修改成jsp頁面,出錯率較高(因為頁面中經常會出現大量的js程式碼),修改問題時需雙方協同開發,效率低。
JSP 必須在支援Java的Web伺服器裡執行(例如tomcat等),無法使用nginx等(nginx單一實例http並發高達5w),效能提不上來。
第一次請JSP,必須在web伺服器中編譯成servlet,第一次運行會較慢。
每次請求JSP都是存取Servlet再用輸出流輸出的html頁面,效率並沒有直接使用html高。
JSP 內有較多標籤和表達式,前端工程師在修改頁面時會捉襟見肘,遇到很多痛點。
如果JSP中的內容很多,頁面回應會很慢,因為是同步載入。
基於上述的一些痛點,我們應該把整個專案的開發權重往前移,實作前後端真正的解耦!
以上是jsp為什麼被淘汰了?的詳細內容。更多資訊請關注PHP中文網其他相關文章!