程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> 關於JAVA >> 簡化編程 JSF是程序員的得力助手

簡化編程 JSF是程序員的得力助手

編輯:關於JAVA

1.JSF的目標是簡化編程,提高效率

事實勝於雄辯,我們不妨舉個簡單的例子,來說明JSF是如何簡化編程,提高效率的。假設我們需要編寫一個登錄網頁,頁面上有兩個文本輸入框,一個用來輸入用戶名,另一個用來輸入密碼;網頁上還有一個標有“確定”字樣的按鈕,用來提交網頁。這樣一個網頁,用JSP如何編寫,相信大家都很清楚,就不再贅述了,我們關心的是,用JSF如何完成這樣一個網頁。

按照常規設計思路,我們暫時不考慮界面,先從業務邏輯開始。顯然,我們需要一段業務邏輯代碼,來執行用戶名和密碼的校驗。這在Java裡非常簡單,定義一個JavaBean,比如LoginBean,它有兩個名為userName和pasWord的String類的屬性(按照JavaBean的規范,為這兩個屬性分別配備getter和setter方法),還有一個check的方法,這個方法包含業務相關的用戶名和密碼校驗邏輯,它返回一個String值,例如“success”或“failure”,用來指示用戶名和密碼是否正確。LoginBean其實是業務范疇的東西,與框架無關。

現在看看,JSF是如何編寫這樣一個Login網頁的。只需三個步驟:

◆將一個文本輸入組件拖放到網頁上,將其value屬性設為“#{LoginBean.userName}”。這將在頁面上生成一個文本輸入框,讓用戶輸入用戶名,並自動存貯到LoingBean的userName屬性中;

◆將另一個文本輸入組件拖放到網頁上,將其value屬性設為“#{LoginBean.password}”。這將在頁面上生成一個文本輸入框,讓用戶輸入密碼,並自動存貯到LoginBean的passWord屬性中;

◆將一個按鈕組件拖放到網頁上,將其action屬性設為“#{LoginBean.check}”。這將在頁面上生成一個按鈕,以便用戶提交網頁,同時,自動調用LoginBean的check方法,校驗用戶名和密碼的有效性。

完了,這就是你作為程序員(程序員培訓 Java程序員培訓 )需要編寫的所有代碼。

如果上面的描述過於簡單,還不足以讓你充分感受JSF的魅力,那麼,再看看JSF值得稱道的頁面導航技術,也許能增加你對JSF的認識。在純的JSF(指不混合JSP技術)應用中,你的代碼中完全不需要用到URL,所有頁面如何走向,你只需通過action方法返回一個適當的String就可以控制了。比如Login頁面,如果action方法LoginBean.check返回的是“success”,用戶將被帶往登錄成功頁面;如果返回的是“failure”,則被帶往一個登錄錯誤頁面,就是這麼自然。你不需要為此編寫任何代碼,只需在工具中進行拖放式的配置就OK了,JSF知道該怎麼做。

事實上,JSF對Java Web編程的簡化遠不止這些。它的自動類型轉換,可以在用戶輸入和後台數據之間建立直接聯系;它的默認的和可插入式的數據驗證功能,可以保證數據輸入的正確性;它的組件模型,允許程序員構造復雜的頁面;它將數據和表現形式完全分開,使得網頁編寫人員可以用多種方式展示數據;它的事件驅動模式,允許程序員在適當的時候、適當的地方執行自己的業務邏輯等等,不一而足。

2.JSF是程序員的得力助手

正像在前文中提到過的那樣,“牛人”們不能容忍你不懂JSP而“混入”Java Web程序員的隊伍裡,自有他們的道理,而你作為一個普通的Java Web程序員,從JSF起步,也有你不得已而為之的苦衷。畢竟,技術不是你唯一的追求,因為你還要追求愛情,而愛情是需要時間的。

你當然不希望整日整夜在電腦面前,寫你的JSP頁面,所以,必須有一種技術,讓你能夠以更快的速度,完成上司強壓下來的工作量,你才能有時間,陪女朋友逛街街和看星星;工作也不是你的全部,因為你還有生活,而生活需要你付出一部分腦力,去思考油鹽醬醋和衣食住行這樣深邃的問題,所以,必須有一種技術,能夠讓你只動用你60%的智慧,就能輕松勝任你的工作。這正是JSF的目標。

如果你用Microsoft的Visual C++或者Borland的Delphi寫過桌面程序,你會發現,用JSF編寫網頁和桌面程序的編程幾乎沒有區別了。這是一個巨大的進步,JSF為你屏蔽了Web的復雜性,將千奇百怪的各種頁面,歸納並抽象成類似窗口的對象,從而使得在Java Web編程中,借鑒現代編程語言的組件概念,成為可能。試著和JSP比比,瞎子都能看到JSF在簡化編程,提高效率方面的優勢。事實上,JSF的長處遠不止這些,借用一句廣告語來總結,那就是:越熟悉Web,越信任JSF。

現在,也許可以回答開篇的那個問題了。JSF到底是什麼?對於普通的程序員來說,JSF不是天外來客,它沒有那麼高貴,不需要你對它敬而遠之;JSF也不是高高在上的神明,不需要你虔誠地供奉;JSF只是普通程序員的得力助手,把你不想干也不願干的活兒交給JSF,不管是request還是response,不管是forward還是redirect,不管是post還是get,不管是class還是instance,也不管是session、request還是page,JSF自會默默地替你操心,忠實地完成其所負責的事情,讓你集中所有的精力,對付老板陰郁的臉色、經理催命般的時間表和客戶那永遠在變化的需求。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved