JavaServer Face 簡介


JavaServer Face 簡稱 JSF(官方網站),是為了簡化程式設計是在頁面端的設計工作。以往的網頁html語法在呈現面不能與JAVA的framwork緊密的相互的連結,而對於不常設計網頁的設計師來說,可以運用此技術設計網頁的UI介面、處理輸入的驗證(Validation)、做頁面導航規則、處理事件的觸發,功能不足的部分也可以自訂JSTL。

JSF目前最新為2.0板,符合MVC網頁架構的View,除了基本的架構外也有許多UI括中原件,如ICEfaces, RichFaces, PrimeFaces...等 。






JSF網頁中所使用到的tags (eg: h:inputText, h:form, h:commandLink...)是被包裝過的html屬性,以利於跟後方連結的java程式做溝通。不同的UI外掛原件也有自己的tag屬性,上述網址也有許多DEMO範例可以參考。

整體來說JSF是可以解決在網頁設計經驗不足的人身上,路邊隨便抓一個人,用少少的程式碼做出大大的效果。不過面對需要做出如原件連動等有變化的功能則會比較難入手,加上原件是被包裝過的,新舊tag之間甚至會有打架的情形,單一使用是需要注意的。

JSF沒能火紅,我認為是能易於入手(若是有人把環境都先架好更棒),但要再擴充相對也變得比較麻煩。

教學tutorial http://javaserverfaces.java.net/  or 梁葛格


2012/6/13補充

在頁面端因為結合JSF架構,可以直接使用畫面上的物件。
例如: 下拉式選單、動態表格。

簡單的jsp想要寫下拉選單,要在頁面嵌入<%  JAVA程式碼 %>,用迴圈的方式去組合頁面的html中<select>原件。而JSF自己有selectItem物件方便在Controller端直接存好物件List後給予JSF頁面存取。


留言

  1. 哇~ 千呼萬喚始出來!!
    不過這技術我還真的很少看到有人在講...
    倒是node.js最近好像很火紅(?!)
    但不管怎樣這些都離我好遠..... >M<"

    回覆刪除
  2. 最近一直令我難眠的,就是技術不能自己決定,究竟能夠走多遠?

    回覆刪除
  3. 網頁技術的確比較多元啦...
    沒多久就有一種技術推出~
    (這也是我為什麼不太想寫網頁的其中一個原因)
    不過資訊科技本來就更新很快~
    保持持續學習的心態才能適應"潮流"... QQ

    回覆刪除
  4. 我是不派斥這潮流,畢竟我可能比較愛顯示表面的東西 XD
    一直學習不會老,也不會流於畫地自限的局面。

    回覆刪除

張貼留言

這個網誌中的熱門文章

[專案] 銀行端末系統

如何在MacOS 中自由切換不同Python版本 - pyenv + virtualenv

用 C# 控制 Win7 輸入法