淺析JSP動态頁面開發優勢和(hé)劣勢

2019-06-13

jspflow.JPG

 

網站前端:html5 js jquery ajax css ps flash json xml
網站後端(服務器):jsp php asp.net
網站構成:運行平台 web服務器和(hé)應用服務器 服務器端腳本 客戶端腳本 數據庫
靜态網頁:靜态網頁是不能随便改動的(de),靜态是一(yī)次性寫好放在服務器上進行浏覽的(de),如(rú)果想改動,必須在頁面上修改,然後再上傳服務器覆蓋原來的(de)頁面,這樣才能更新信息,比較麻煩,使用者不能随時更改。
動态網頁:動态網頁是可(kě)以随時改變內(nèi)容的(de),有前後台之分,管理(lǐ)員可(kě)以在後台随時更新網站的(de)內(nèi)容,前台頁面的(de)內(nèi)容也會随之更新,比較簡單易學(xué)。
動态網頁的(de)特點:  交互性(網頁會根據用戶的(de)要求和(hé)選擇而動态改變和(hé)響應)。 自(zì)動更新(無需手動操作,便會自(zì)動生成新的(de)頁面),随機性(不同的(de)人和(hé)時間訪問同一(yī)網址會産生不同的(de)頁面效果)

Ajax是一(yī)種用于創建快速動态網頁的(de)技術。(可(kě)進行局部更新)
Linux系統:Linux是一(yī)套免費使用和(hé)自(zì)由傳播的(de)類Unix操作系統,是一(yī)個基于POSIX和(hé)UNIX的(de)多用戶、多任務、支持多線程和(hé)多CPU的(de)操作系統。繼承了Unix以網絡為(wèi)核心的(de)設計思想,是一(yī)個性能穩定的(de)多用戶網絡操作系統。
C/S(Client/Server或客戶/服務器模式):word excel
特點:升級麻煩、 維護不易、 安全性好、 速度快
B/S(Brower/Server或浏覽器/服務器模式):新浪 搜狐
特點:升級容易、 維護方便、 對客戶機性能要求不高(gāo)
兩者區别:cs架構的(de)應用程序需要在用戶的(de)計算機上進行安裝,而bs架構的(de)應用程序不需要在用戶的(de)計算機上進行安裝,隻需要有一(yī)個浏覽器就可(kě)以運行。

JSP的(de)優缺點
  1. JSP技術極大的(de)增加了産品的(de)複雜性.為(wèi)了獲得 系統的(de)跨平台功能和(hé)産品伸縮能力,java系統開發了多種産品,如(rú),JRE,JDK,J2EE,EJB,JSWDK,JavaBeans ,隻有有效地(dì)将它們組合在一(yī)起,才能産生強大的(de)功能.(部署有難度)
  2. java的(de)高(gāo)效率運行需要占用大量的(de)內(nèi)存和(hé)硬盤空間. 一(yī)方面,java的(de)高(gāo)速運行是通過 .class文件常駐內(nèi)存來實現的(de).另一(yī)方面,還需要硬盤空間來存儲一(yī)系列的(de).java 文件和(hé).class文件以及對應的(de)版本文件.(硬件要求高(gāo))
   3. JSP程序調試困難.

 JSP頁面執行時, 首先被轉換為(wèi) .java文件(Servlet), 然後将.java文件編譯為(wèi)字節碼文件. 這樣,出錯信息實際上指向的(de)是轉換後的(de)那個.java文件(Servlet), 而不是JSP本身. (調試有難度)

 優點:

1.JSP代碼跨平台, 即一(yī)次編寫,處處運行
衆所周知,由于微軟的(de)壟斷性,它的(de)産品可(kě)移植性做(zuò)得十分差,ASP也不例外,
2.JSP組件跨平台

 JSP組件(企業JavaBeans,JavaBeans或定制的(de)JSP标簽)都是跨平台可(kě)重用的(de).企業JavaBeans組件可(kě)以訪問傳統的(de)數據庫,并能以分布式系統模式工作于Solaris,Linux,UNIX和(hé)Windows平台.

 3.支持多種網頁格式

 目前, JSP技術支持的(de)網頁格式還沒有一(yī)個明确的(de)标準.一(yī)般來說,JSP技術既可(kě)以支持HTML/DHTML的(de)傳統浏覽器文件格式,又可(kě)以支持應用于無線通信設備如(rú)移動電話,PDA等設備進行網頁預覽的(de)WML文件格式,還可(kě)以支持其他一(yī)些B2B電子(zǐ)商務網站應用的(de)XML格式.

 4.JSP标簽可(kě)擴充性
盡管ASP和(hé)JSP都使用标簽與腳本技術來制作動态Web網頁,JSP技術允許開發者擴展JSP标簽,定制JSP标簽庫,所以網頁制作者充分利用與XML兼容的(de)标簽技術強大的(de)功能,大大減少對腳本語言的(de)依賴.由于定制标簽技術,使網頁制作者降低(dī)了制作網頁的(de)複雜度.
5.健壯性與安全性
由于JSP頁面使用的(de)腳本語言是java語言, 因此,它就具有java技術的(de)所有好處, 包括健壯的(de)存儲管理(lǐ)和(hé)安全性.


JSP前後分離(lí)的(de)優勢:

1.可(kě)以實現真正的(de)前後端解耦,前端服務器使用nginx。

前端/WEB服務器放的(de)是css,js,圖片等等一(yī)系列靜态資源(甚至你還可(kě)以css,js,圖片等資源放到特定的(de)文件服務器,例如(rú)阿裏雲的(de)oss,并使用cdn加速),前端服務器負責控制頁面引用&跳轉&路由,前端頁面異步調用後端的(de)接口,後端/應用服務器使用tomcat(把tomcat想象成一(yī)個數據提供者),加快整體響應速度。

(這裏需要使用一(yī)些前端工程化的(de)框架比如(rú)nodejs,react,router,react,redux,webpack)

2.發現bug,可(kě)以快速定位是誰的(de)問題,不會出現互相踢皮球的(de)現象。

頁面邏輯,跳轉錯誤,浏覽器兼容性問題,腳本錯誤,頁面樣式等問題,全部由前端工程師來負責。

接口數據出錯,數據沒有提交成功,應答超時等問題,全部由後端工程師來解決。

雙方互不幹擾,前端與後端是相親相愛的(de)一(yī)家人。

3.在大并發情況下,可(kě)以同時水平擴展前後端服務器,比如(rú)淘寶的(de)一(yī)個首頁就需要2000+台前端服務器做(zuò)集群來抗住日均多少億+的(de)日均pv。

4.減少後端服務器的(de)并發/負載壓力

除了接口以外的(de)其他所有http請求全部轉移到前端nginx上,接口的(de)請求調用tomcat,參考nginx反向代理(lǐ)tomcat。

且除了第一(yī)次頁面請求外,浏覽器會大量調用本地(dì)緩存。

5.即使後端服務暫時超時或者宕機了,前端頁面也會正常訪問,隻不過數據刷不出來而已。

6.也許你也需要有微信相關的(de)輕應用,那樣你的(de)接口完全可(kě)以共用,如(rú)果也有app相關的(de)服務,

那麽隻要通過一(yī)些代碼重構,也可(kě)以大量複用接口,提升效率。(多端應用)

7.頁面顯示的(de)東西再多也不怕,因為(wèi)是異步加載。

8.nginx支持頁面熱部署,不用重啓服務器,前端升級更無縫。

9.增加代碼的(de)維護性&易讀性(前後端耦在一(yī)起的(de)代碼讀起來相當費勁)。

10.提升開發效率,因為(wèi)可(kě)以前後端并行開發,而不是像以前的(de)強依賴。

11.在nginx中部署證書,外網使用https訪問,并且隻開放443和(hé)80端口,其他端口一(yī)律關閉(防止黑客端口掃描),內(nèi)網使用http,性能和(hé)安全都有保障。

12.前端大量的(de)組件代碼得以複用,組件化,提升開發效率,抽出來!

 

責任編輯:中山網站建設
 【網訊網絡】國(guó)家高(gāo)新技術企業》十年(nián)專注軟件開發,網站建設,網頁設計,APP開發,小程序,微信公衆号開發,定制各類企業管理(lǐ)軟件(OA、CRM、ERP、訂單管理(lǐ)系統、進銷存管理(lǐ)軟件等)!服務熱線:0760-88610046、13924923903,http://www.wansion.net

 

您的(de)項目需求咨詢熱線:0760-88610046(國(guó)家高(gāo)新技術企業)

*請認真填寫需求,我們會在24小時內(nèi)與您取得聯系。