純Html+Ajax和JSP二者的優缺點

 

我對jsp和ajax 一直比較困惑, jsp動態網頁技術,在服務器端執行,能在網頁中顯示數據這是一種方式 .
另外一種方式是
我打開一個網頁(html),加載完成以後,使用js,ajax訪問網絡獲得json數據,使用js操做,在頁面中追加元素,顯示出來 。也行啊。html

 

是否是說這種方式能夠把jsp方式替代掉了?我想知道,通常是怎麼使用這兩種技術的。是都使用,仍是說單獨用一個。
舉例個例子
第一種方式 :jsp初始化數據,ajax發送異步,進行刷新
假設,我要顯示新聞列表界面。
http://localhost:8080/ecampus/getnewslist前端

controller中有此方法
getNewsList(){
//獲得 news的list<news>
//session.set(「newslist」, newslist)
//return 「news」
}java

而後跳轉到了news.jsp 頁面中。
在news.jsp界面中,使用jsp:for 標籤在新聞div 區域顯示session中newslist.
假設 news.jsp中有一個刷新按鈕,當點擊刷新按鈕後,使用ajax,發送網絡請求
顯示最新的新聞。ajax

第二種方式 :徹底不使用jsp,使用js,ajax完成數據讀取,顯示新聞
假設,我要打開顯示新聞界面。
http://localhost:8080/ecampus/news.html
而後跳轉到了news.html 頁面中。
在news.html界面中,事先留出一個div用於顯示新聞的。
在news.html加載完成後,調用使用js,發送ajax請求,獲得數據後,解析,並顯示到div上。
假設 news.html中有一個刷新按鈕,當點擊刷新按鈕後,使用ajax,發送網絡請求
顯示最新的新聞。json

這種方式也行。後端

哪一種方式更好一些呢?通常採用哪一種方式?瀏覽器

 

我能想到的就是, 使用jsp,速度應該會快不少,而採用第二種方式 ,由於js,ajax,顯示數據,都是在客戶端執行的,速度應該會慢。。服務器

通常應該是採用第一種方式吧。網絡

 

根據上面的問題,個人見解以下:
一.ajax的優勢:
    1.開發過程當中前端與後端脫離,交互經過JSON傳輸來實現
    2.跨平臺能力更強,依託於瀏覽器的支持
    3.使後臺數據接口可以獲得複用
二.ajax的缺點:
    1.開發難度大,考慮瀏覽器的兼容性
    2.頁面請求過多
    3.屬於後加載,沒法被爬蟲爬到
    4.接口代碼須要新增不少
    5.沒法直接顯示java實體類對象,須要轉換爲json格式
三.jsp的優勢:
    1.可被爬蟲爬到
    2.減小請求次數
    3.不用考慮瀏覽器的兼容性
四.jsp的缺點:
    1.增大了服務器的壓力
    2.前端與後端未脫離,拖慢開發進度
    3.過於依賴java運行環境
    4.複用較低。
相關文章
相關標籤/搜索