<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆-128  評論-55  文章-5  trackbacks-0

    The JavaBeans Activation Framework 1.1 contains a few small enhancements and bugs fixes. The enhancements are described here and have been approved by the JCP as JSR-925. The primary enhancements are:

    • Provide a list of all MIME types known to a MailcapCommandMap.
    • Provide access to the native commands known to a MailcapCommandMap.
    • Support for fallback entries in mailcap file.

    The JavaBeans Activation Framework 1.1 requires J2SE 1.4 or greater.

    The JavaBeans Activation Framework 1.1 final release is included with the Java SE 6 release and the Java EE 5 release, and is also available separately.

    For a detailed description see the jaf-changes.txt document.

                         ... ...

    JavaBeans Activation Framework(JAF)主頁    http://java.sun.com/beans/glasgow/jaf.html 




    JavaBeans激活框架JavaBeans Activation Framework

           JAF的目的在于統一處理不同數據格式的方法(不管數據格式為簡單文本還是由圖片、聲音、視頻甚至其它"活動"內容共同組成的復合文檔)。在這個意義上,JAFJava的作用正如插件對Web瀏覽器的作用。JAF使得Java對象編碼數據流之間的映射變得非常容易。

           JAF完成于1998年,當時JavaBean非常流行,Swing非常熱門,Servlet剛剛出現,J2EE平臺還沒有。那時Sun需要一個用于文件瀏覽器和JavaMail的標準發現API,此需要推動了JAF的創建。“發現”指可以動態找到正確的組件以處理任意但類型化了的數據的機制。特別是,作為發現API來開發JAF,以便使GUI開發人員能夠為文檔和圖像數據動態地發現瀏覽器和編輯器。

           發現取決于注冊的類型,注冊可以將每一文件類型與對應的應用程序建立關聯。

           簡單的說,JAF提供了用于動態發現可視窗口部件以處理由MIME文件頭描述的各種數據的架構。當用于SAAJ這樣的非可視系統時,JAF可以將Java類型映射到將它們無縫轉換到數據流的特殊處理程序,從而允許SAAJJava對象自動轉換成由SwA MIME部分包含的原始數據

     

    1.       DataHandler

           JAF架構的核心是javax.activation.DataHandler類。DataHandler類定義了三個構造函數:

           Public DataHandler(DataSource ds)

           Public DataHandler(java.net.URL url)

           Public DataHandler(Object obj, String mimeType)

           當使用前兩個構造函數時,數據處理會委托到DataSource接口的一個子類型,使用第三個構造函數時,數據處理委托到一個動態發現的內容處理程序并使用此處理程序。

           如果DataHandler是用DataSource對象構造的,那么它將首先試圖試圖將getContent()方法委托到一個DCH,如果它沒有找到DCH,會返回一個從DataSource中得到的InputStream。有趣的是,DataHandler總是試圖首先委托到一個DCH,即便是用DataSource創建DataHandler也是如此

           上述說明的問題看似簡單,但實際上非常重要,它說明了getContent()方法的作用。getContent()方法要返回一個表示附件的Java對象,DataSourceInputStream只作為最后一種手段來返回。從DCH中返回的對象類型取決于DCH的編碼方式。

     

    2.       DataContentHandler

           此接口用于實現將Java對象流轉換成數據流,或將數據流轉換成Java對象。

           DataContentHandler類型的每一個子類(即每一個DCH)均用于自動將Java對象的專用類型轉換為流,以及將流轉換成Java對象。如某個DCH能夠將java.awt.Image對象轉換為JPEGGIF編碼流,或者進行反向轉換。DCH的缺點是它們的使用范圍通常受到很大的限制,每一個DCH只能講一個對象類型轉換成一種類型的數據流

           DCH不同,DataSource對象只處理數據流。用戶要用DataSource從某種類型的資源中讀數據流,并將數據流寫入DataSource。,此時重點放在了流上而不是Java對象類型上。從而DataSource具有很大的通用性,其缺點為不宜于使用,因為用戶直接處理的是流而不是Java對象。

     

    3.       DataSource

           DataSource類擁有完成委托操作所需要的全部功能。當使用DataSourceURL參數構造DataHandler時,DataHandler要使用DataSource而不是DCH

           JAF定義了兩個標準的DataSource對象,即FileDataSource對象和URLDataSource對象。     某些DataSource實現用于動態發現它們的MIME類型。例如,FileDataSourceMIME類型注冊表發現它的MIME類型。JAF中的默認MIME類型注冊表是mimetypes.default文件,該文件包含在JAF二進制JAR文件中。


     



    Author: orangelizq
    email: orangelizq@163.com

    歡迎大家訪問我的個人網站 萌萌的IT人
    posted on 2007-07-27 22:34 桔子汁 閱讀(2220) 評論(4)  編輯  收藏 所屬分類: J2EE

    評論:
    # re: JAF 學習 2007-11-04 22:12 | shoh-bala
    jaf怎么升級  回復  更多評論
      
    # re: JAF 學習 2007-11-05 10:23 | orangelizq
    JAF就是個JAR包,可導入工程,可以下載最新版的JAR包導入就行  回復  更多評論
      
    # re: JAF 學習 2007-11-11 22:00 | JAF 學習
    JAF就是個JAR包  回復  更多評論
      
    # re: JAF 學習 2007-11-14 12:10 | makkkj
    hao  回復  更多評論
      
    主站蜘蛛池模板: 四虎影在线永久免费四虎地址8848aa| 老司机亚洲精品影视www| 亚洲AV成人片无码网站| 亚洲无码黄色网址| 最近免费最新高清中文字幕韩国| 亚洲精品无码久久久久APP| 亚洲午夜久久久久久噜噜噜| 日日麻批免费40分钟日本的| 免费人成视频在线观看免费| 中文字幕亚洲第一在线| 免费观看午夜在线欧差毛片| 亚洲高清视频免费| 一级毛片免费一级直接观看| 国产成人精品日本亚洲网址| 国产亚洲av片在线观看16女人| 天天看免费高清影视| 国产成人精品免费久久久久| 国产精品亚洲专区无码唯爱网| 夜夜亚洲天天久久| 亚洲欧洲中文日韩久久AV乱码| 亚洲w码欧洲s码免费| 国产无限免费观看黄网站| 亚洲黄页网在线观看| 久久精品国产亚洲AV果冻传媒| 国产国产人免费人成免费视频| 91九色视频无限观看免费| 国产精品1024在线永久免费| 在线观看免费高清视频| 国产午夜免费高清久久影院| 免费看一级毛片在线观看精品视频 | 日本最新免费网站| 在线免费观看h片| 日韩在线观看免费| 亚洲爆乳无码专区www| 亚洲三级在线免费观看| 亚洲国产一区在线| 亚洲综合图色40p| 免费播放特黄特色毛片| 成人毛片18女人毛片免费| 0588影视手机免费看片| 污污网站免费观看|