詹少威
【摘要】 本文將緊扣J ava web后端開發模式演變這一中心主題,對其開發模型的進化過程進行闡述和說明,并對其未來的發展趨勢進行簡要的展望。
【關鍵詞】 J ava Web 應用 開發模式 演變 展望
Java Web應用程序,是在互聯網的不斷發展中被提出來的,其在經過數年的發展過后,已經極大地推動了互聯網的應用和進化。事實上,就目前來說,人們已經不再滿足于單純地瀏覽網頁信息,其需要的是一種基于動態的具有多樣性功能的HTML頁面。當然,Web應用程序最開始就是動態網頁技術,其在進化演變過程中,實際上是伴隨著一種包括JSP、MVC以及HTML技術的更新換代,本文通過對其開發模式演變進行分析和探究,具有十分重要的現實意義。
一、JSP與Model模式時代
Servlet是Java領域當中的最早應用,其可以直接的對瀏覽器的請求進行接收,然而,隨著瀏覽器網頁由靜態向動態轉變,雖然JSP技術是基于Servlet技術而提出的,因此這給人一種感覺,即頁面中加入了代碼。早期的JSP很受歡迎,并被當做是獨立的動態網頁技術,而且,很多Web完全是由JSP組成的。JSP+Java bean的二層開發模型的提出,在一定程度上有效減少了JSP中的代碼量,增加了邏輯代碼的可重用性,并讓Java Web應用更容易維護。
二、MVC模式時代下的Java后端開發模式
為了讓美工更方便的完成自己的工作,JSP中用于控制程序流程和數據傳遞的代碼被剝離出來,JSP僅僅用于接受數據生成頁面,JSP類似于HTML的編輯方式讓界面設計者更容易專注于Java Web應用的顯示部分。JSP中被剝離出來控制程序跳轉和數據傳遞的代碼放在Servlet中作為獨立的控制層。專注于界面和展示的JSP成為Java Web應用的表示層,不再需要去掉用邏輯代碼類,而java bean其實已經失去了原來的字面意義,只是擔任著應用的邏輯層工作被servlet調用的普通Java類,Servlet又重新回到了應用的核心位置。三者各司其職,這就是Java Web中經典的MVC模式。目前有很多專門支持MVC模式的第三方開發框架。繼續龐大著的Web應用讓MVC模式進一步的進化,對復雜數據及業務邏輯的處理要求繼續不斷的提高,數據庫的操作和數據處理也從邏輯層提取出來,成為數據處理層。獨立出來的邏輯層只接受對數據運算和業務邏輯的處理,而數據處理層負責程序和數據庫之間的數據操作。
三、AJAX時代下的Java后端開發模式
事實上,無論JSP時代,還是MVC時代,后端開發技術中所使用的HTM L標記語言、CSS 和 JavaScript 腳本語言實際上在本質上都是一樣的,后端應用運用它們來表示瀏覽器的相應內容,并且經過瀏覽器解析,更好地呈現給用戶。然而,實際上的JavaScript與CSS一起,利用HTML的DOM模型,實現頁面的各種效果,這在一定程度上給以使用者一種不一樣的體驗。值得高興的是,隨著Internet explorer 5開始對JavaScript 的對象提供支持,JavaScript可以不通過其它間接的渠道而直接向web應用程序服務器發送XML與JSON的數據請求,并獲得相應。當然,這種直接請求式的數據訪問與回應,實際上就是目前已經得到廣泛運用的AJAX技術。
AJAX的提出,實際上在很大程度上推動了客戶端的井噴式發展,相應的Java后臺開發模式也隨之發生了重要改變。AJAX讓Web應用向c/s模式應用的功能特性靠近了一步,后端不再需要每次響應都生成一個完整的XM L文檔數據發送給瀏覽器重新刷新頁面,而直接返回被請求的XML和JSON數據,Java Script腳本再對 XML和JSON數據進行處理,以往只關注 Web 應用界面樣式和效果的前端腳本變得復雜起來,需要進行越來越多的數據處理。由于XML和JSON數據和后端代碼的數據格式不完全兼容,在后端代碼接受數據請求和發出數據響應時增加了一次數據格式轉化過程。
四、HTML5時代下的Java后端開發模式
作為網絡技術不斷發展的現今,HTML5的推出,無疑是劃時代的一筆。就HTML5而言,其已經不再局限于過去那種簡單的頁面腳本,相反地,它為了實現讓Web應用使用TCP協議和服務器兩者之間的數據傳遞,而直接提供了編程接口,換句話說,其顛覆了傳統離散式的數據傳遞方式。我們相信,作為這種Web應用核心特性之一,這種新式的數據傳遞方式必將對Java Web后端開發模式的演變產生十分重要的影響。
五、結語
經過上文的分析和介紹,我們對Java web后端開發模式的整個脈絡有了一定的認識,我們可以從中深刻地認識到,開發模式的不斷更新,實際上是人們對互聯網要求的不斷變更帶動的。就目前來說,功能更強大、界面更華麗、使用體驗更高的各種要求已經促使Java Web技術不斷發展,但是縱使這些模式在發生改變,其都應該充分把握好其開發成本,真正意義上推動其技術革新。
參考文獻
[1]劉斌.精通Java Web整合開發第二版[M].北京:電子工業出版社,2011年3月