日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

簡介JSF

系統(tǒng) 1828 0

簡介JSF

?

Web應用程序的開發(fā)與傳統(tǒng)的單機程序開發(fā)在本質上存在著太多的差異,Web應用程序開發(fā)人員至今不可避免的必須處理HTTP的細節(jié),而HTTP無狀態(tài)的 (stateless)本質,與傳統(tǒng)應用程序必須維持程序運行過程中的信息有明顯的違背,再則Web應用程序面對網站上不同的使用者同時的存取,其執(zhí)行緒 安全問題以及資料驗證、轉換處理等問題,又是復雜且難以解決的。

  另一方面,本質上是靜態(tài)的HTML與本質上是動態(tài)的應用程序又是一項違背,這造成不可避免的,處理網頁設計的美術人員與程序設計人員,必須被彼 此加入至視圖組件中的邏輯互相干擾,即便一些視圖呈現(xiàn)邏輯以卷標的方式呈現(xiàn),試圖展現(xiàn)對網頁設計美術人員的親切,但它終究必須牽涉到相關的流程邏輯。

  有很多方案試著解決種種的困境,而各自的著眼點各不相同,有的從程序設計人員的角度來解決,有的從網頁設計人員的角度來解決,各種的框架被提 出,所造成的是各種不統(tǒng)一的標簽與框架,為了促進產能的整合開發(fā)環(huán)境(IDE)難以整合這些標簽與框架,另一方面,開發(fā)人員的學習負擔也不斷的加重,他們 必須一人了解多個角色的工作。

JavaServer Faces 的提出在試圖解決這個問題,它試圖在不同的角度上提供網頁設計人員、應用程序設計人員、組件開發(fā)人員解決方案,讓不同技術的人員可以彼此合作又不互相干擾,它綜合了各家廠商現(xiàn)有的技術特點,由Java Community Process(JCP)團隊研擬出來的一套標準,并在2004年三月發(fā)表了JavaServer Faces 1.0實作成果。

  從網頁設計人員的角度來看,JavaServer Faces提供了一套像是新版本的HTML標簽,但它不是靜態(tài)的,而是動態(tài)的,可以與后端的動態(tài)程序結合,但網頁設計人員不需要理會后端的動態(tài)部份,網頁 設計人員甚至不太需要接觸JSTL這類的卷標,也可以動態(tài)的展現(xiàn)數(shù)據(jù)(像是動態(tài)的查詢表格內容),JavaServer Faces提供標準的標簽,這可以與網頁編輯程序結合在一起,另一方面,JavaServer Faces也允許您自訂標簽。

  從應用程序設計人員的角度來看,JavaServer Faces提供一個與傳統(tǒng)應用程序開發(fā)相類似的模型(當然因某些本質上的差異,模型還是稍有不同),他們可以基于事件驅動來開發(fā)程序,不必關切HTTP的 處理細節(jié),如果必須處理一些視覺組件的屬性的話,他們也可以直接在整合開發(fā)環(huán)境上拖拉這些組件,點選設定組件的屬性,JavaServer Faces甚至還為應用程序設計人員處理了對象與字符串(HTTP傳送本質上就是字符串)間不匹配的轉換問題。

  從UI組件開發(fā)人員的角度來看,他們可以設計通用的UI組件,讓應用程序的開發(fā)產能提高,就如同在設計Swing組件等,UI開發(fā)人員可以獨立開發(fā),只要定義好相關的屬性選項來調整細節(jié),而不用受到網頁設計人員或應用程序設計人員的干擾。

  三個角色的知識領域原則上可以互不干擾,根據(jù)您的角色,您只要了解其中一個知識領域,就可以運用JavaServer Faces,其它角色的知識領域您可以不用了解太多細節(jié)。

  當然,就其中一個角色單獨來看,JavaServer Faces隱藏了許多細節(jié),若要全盤了解,其實JavaServer Faces是復雜的,每一個處理的環(huán)境都值得深入探討,所以學習JavaServer Faces時,您要選擇的是通盤了解,還是從使用的角度來了解,這就決定了您學習時所要花費的心力。

  要使用JSF,首先您要先取得JavaServer Faces參考實作(JavaServer Faces Reference Implementation),在將來,JSF會與Container整合在一起,屆時您只要下載支持的Container,就可以使用JSF的功能。

  請至 JSF 官方網站的 下載區(qū) 下載參考實作,在下載壓縮檔并解壓縮之后,將其 lib 目錄下的 jar 檔案復制至您的Web應用程序的/WEB-INF/lib目錄下,另外您還需要 jstl.jar 與 standard.jar 檔案,這些檔案您可以在 sample 目錄下,解壓縮當中的一個范例,在它的/WEB-INF/lib目錄下找到,將之一并復制至您的Web應用程序的/WEB-INF/lib目錄下,您總共需要以下的檔案:

            * jsf-impl.jar
    * jsf-api.jar
    * commons-digester.jar
    * commons-collections.jar
    * commons-beanutils.jar
    * jstl.jar
    * standard.jar
      

  接下來配置Web應用程序的web.xml,使用JSF時,所有的請求都透過FacesServlet來處理,您可以如下定義:

?

  • web.xml

?

web.xml

?

    <?xml version="1.0"
 encoding="ISO-8859-1"
?>
 <web-app xmlns="http://java.sun.com/xml/ns/j2ee"


xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"


xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee

http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"

version="2.4"
>

    <description>
        JSF Demo
    </description>
    <display-name>JSF Demo</display-name>
    <servlet>
        <servlet-name>Faces Servlet</servlet-name>
        <servlet-class>
            javax.faces.webapp.FacesServlet
        </servlet-class>
        <load-on-startup>1</load-on-startup>
    </servlet>

    <servlet-mapping>
        <servlet-name>Faces Servlet</servlet-name>
        <url-pattern>*.faces</url-pattern>
    </servlet-mapping>

    <welcome-file-list>
        <welcome-file>index.html</welcome-file>
    </welcome-file-list>
 </web-app> 
  
?

?

  在上面的定義中,我們將所有.faces的請求交由FaceServlet來處理,F(xiàn)aceServlet會喚起相對的.jsp網頁,例如請求是/index.faces的話,則實際上會喚起/index.jsp網頁,完成以上的配置,您就可以開始使用JSF了。

?

簡介JSF


更多文章、技術交流、商務合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯(lián)系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發(fā)表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 满洲里市| 富平县| 分宜县| 永德县| 元谋县| 海兴县| 桐庐县| 高唐县| 奉节县| 宁远县| 望谟县| 屯昌县| 翁源县| 龙游县| 新平| 盐津县| 宣恩县| 龙江县| 定边县| 咸宁市| 滦平县| 黑龙江省| 玉门市| 将乐县| 余庆县| 安宁市| 清河县| 连云港市| 伊通| 调兵山市| 禹城市| 扎囊县| 称多县| 朔州市| 洮南市| 祁门县| 泰来县| 铜川市| 沿河| 托克逊县| 格尔木市|