亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

簡介JSF

系統 1600 0

簡介JSF

?

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

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

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

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

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

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

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

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

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

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

  請至 JSF 官方網站的 下載區 下載參考實作,在下載壓縮檔并解壓縮之后,將其 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來處理,FaceServlet會喚起相對的.jsp網頁,例如請求是/index.faces的話,則實際上會喚起/index.jsp網頁,完成以上的配置,您就可以開始使用JSF了。

?

簡介JSF


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

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

【本文對您有幫助就好】

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

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 欧美操穴 | 色综合五月天 | 精品国产一二三区 | 欧美70一80老妇性大片 | 狠狠2020| 日本特黄在线观看免费 | 成 人国产在线观看高清不卡 | 日本精品夜色视频一区二区 | 在线日韩视频 | 奇米影视777俺要去888 | 亚洲欧美日韩高清中文在线 | 久久r热这里有精品视频 | 国产成人综合亚洲 | 久久天堂成人影院 | 99国产超薄丝袜足j在线观看 | 国产精品19禁在线观看2021 | 伊人伊狠亚洲综合影院 | 在线成人精品国产区免费 | 天天综合网在线 | 老司机深夜免费福利 | 国产精品久久一区 | 老司机精品久久 | 日日干综合| 大陆一级毛片 | 亚洲九九 | 国产国语一级毛片中文 | 亚洲国产成人久久精品图片 | 欧美a级成人淫片免费看 | 91精品自在拍精选久久 | 精品久久久久不卡无毒 | 国产成人精品区在线观看 | 四虎在线视频免费观看 | 一级欧美毛片成人免费视频 | 一级毛片大全免费播放 | 国产第一页精品 | 色吧久久 | 五月婷在线视频 | 欧美日韩高清 | 国产乱人伦av在线a 国产乱人伦精品一区二区 国产乱人伦偷精品视频不卡 | 奇米777在线| 最近中文字幕无吗高清视频 |