JSF進行Web開發的三大優勢

JSF優勢之一:UI組件(UI-component)

  UI組件(UI-component)一直是桌面程序的專利,Web程序中,雖然HTML定義了基本的UI標籤,但要使這些UI標籤像UI組件那樣工作,還需要很多代碼片斷來處理數據及其表現形式,而且有效地組織這些代碼片斷使其協調一致也是一件繁瑣的工作。JSF的UI組件是真正意義上的UI組件,能極大地簡化程序員的工作,例如,在頁面上放置一個文本輸入框,這個輸入框立即具備了數據填充、界面更新、事件偵聽、動作觸發、有效性檢查和類型轉換的功能。更爲重要的是,程序員只需根據業務邏輯編寫核心業務代碼,JSF會保證代碼在合適的時候被執行,完全不用考慮代碼與代碼之間該如何來配合。

  JSF優勢之二:事件驅動模式

  事件是面向對象方法的重要組成部分,對象之間通過事件進行溝通和交流,使得一個或多個對象能夠對另一個對象的行爲作出響應,共同合作去完成一項業務邏輯。通常,編寫Web程序時,程序員要爲對象之間的溝通設計機制,編寫代碼。雖然溝通的內容屬於業務邏輯,但溝通的機制顯然與業務沒有太大關係,程序員因此爲業務邏輯之外的功能浪費了時間。

  JSF改變了這種狀況。JSF的事件和偵聽模式與大家熟悉的Javabean的事件模式類似,有Java基礎的程序員並不需要學習任何新的東西。JSF的UI組件可以產生事件,例如,當頁面上一個文本輸入框的內容被修改時,會發出一個“值改變事件”。另一個對象如果對“值改變事件”感興趣,只需註冊爲該對象的偵聽者,並編寫處理例程,即可命令JSF在事件發生時自動調用處理例程。JSF做了所有該做的事,留給程序員的只有業務邏輯代碼的編寫。

  JSF優勢之三:用戶界面到業務邏輯的直接映射

  舉個例子,表單提交是Web編程最常見的任務,也是最複雜的任務之一。當用戶在網頁上點擊“確定”按鈕時,瀏覽器將生成一個HTTP請求,發往服務器端的某個Servlet,執行該Servlet的service方法。在service方法中,HTTP請求需要經歷解碼、類型轉換、有效性驗證、狀態保存、數據更新等環節,處理這些環節的所有細節,對程序員來說是沉重的負擔。

  在JSF下,這些工作的很大一部分都由框架承擔了,在程序員看來,這個過程是透明的,用戶界面端的HTTP請求可以直接映射到後端的一個事件處理例程,JSF起到了承前啓後的作用。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章