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

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

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

    BlogJava 聯系 聚合 管理  

    Blog Stats

    隨筆檔案

    exams


    java世界

    世界Java

    Hibernate一共包括了23個jar包,令人眼花繚亂。本文將詳細講解Hibernate每個jar包的作用,便于你在應用中根據自己的需要進行取舍。

      下載Hibernate,例如2.0.3穩定版本,解壓縮,可以看到一個hibernate2.jar和lib目錄下有22個jar包:

      hibernate2.jar:
      Hibernate的庫,沒有什么可說的,必須使用的jar包

      cglib-asm.jar:
      CGLIB庫,Hibernate用它來實現PO字節碼的動態生成,非常核心的庫,必須使用的jar包

      dom4j.jar:
      dom4j是一個Java的XML API,類似于jdom,用來讀寫XML文件的。dom4j是一個非常非常優秀的Java XML API,具有性能優異、功能強大和極端易用使用的特點,同時它也是一個開放源代碼的軟件,可以在SourceForge上找到它。在IBM developerWorks上面可以找到一篇文章,對主流的Java XML API進行的性能、功能和易用性的評測,dom4j無論在那個方面都是非常出色的。我早在將近兩年之前就開始使用dom4j,直到現在。如今你可以看到越來越多的Java軟件都在使用dom4j來讀寫XML,特別值得一提的是連Sun的JAXM也在用dom4j。這是必須使用的jar包,Hibernate用它來讀寫配置文件。

      odmg.jar:
      ODMG是一個ORM的規范,Hibernate實現了ODMG規范,這是一個核心的庫,必須使用的jar包。

      commons-collections.jar:
      Apache Commons包中的一個,包含了一些Apache開發的集合類,功能比java.util.*強大。必須使用的jar包。

      commons-beanutils.jar:
      Apache Commons包中的一個,包含了一些Bean工具類類。必須使用的jar包。

      commons-lang.jar:
      Apache Commons包中的一個,包含了一些數據類型工具類,是java.lang.*的擴展。必須使用的jar包。

      commons-logging.jar:
      Apache Commons包中的一個,包含了日志功能,必須使用的jar包。這個包本身包含了一個Simple Logger,但是功能很弱。在運行的時候它會先在CLASSPATH找log4j,如果有,就使用log4j,如果沒有,就找JDK1.4帶的java.util.logging,如果也找不到就用Simple Logger。commons-logging.jar的出現是一個歷史的的遺留的遺憾,當初Apache極力游說Sun把log4j加入JDK1.4,然而JDK1.4項目小組已經接近發布JDK1.4產品的時間了,因此拒絕了Apache的要求,使用自己的java.util.logging,這個包的功能比log4j差的很遠,性能也一般。

      后來Apache就開發出來了commons-logging.jar用來兼容兩個logger。因此用commons-logging.jar寫的log程序,底層的Logger是可以切換的,你可以選擇log4j,java.util.logging或者它自帶的Simple Logger。不過我仍然強烈建議使用log4j,因為log4j性能很高,log輸出信息時間幾乎等于System.out,而處理一條log平均只需要5us。你可以在Hibernate的src目錄下找到Hibernate已經為你準備好了的log4j的配置文件,你只需要到Apache 網站去下載log4j就可以了。commons-logging.jar也是必須的jar包。

      使用Hibernate必須的jar包就是以上的這幾個,剩下的都是可選的。

      ant.jar:
      Ant編譯工具的jar包,用來編譯Hibernate 642-964  源代碼的。如果你不準備修改和編譯Hibernate源代碼,那么就沒有什么用,可選的jar包

      optional.jar:
      Ant的一個輔助包。

      c3p0.jar:
      C3PO是一個數據庫連接池,Hibernate可以配置為使用C3PO連接池。如果你準備用這個連接池,就需要這個jar包。

      proxool.jar:
      也是一個連接池,同上。

      commons-pool.jar, commons-dbcp.jar:
      DBCP數據庫連接池,Apache的Jakarta組織開發的,Tomcat4的連接池也是DBCP。

      實際上Hibernate自己也實現了一個非常非常簡單的數據庫連接池,加上上面3個,你實際上可以在Hibernate上選擇4種不同的數據庫連接池,選擇哪一個看個人的偏好,不過DBCP可能更通用一些。另外強調一點,如果在EJB中使用Hibernate,一定要用App Server的連接池,不要用以上4種連接池,否則容器管理事務不起作用。

      connector.jar:
      JCA 規范,如果你在App Server上把Hibernate配置為Connector的話,就需要這個jar。不過實際上一般App Server肯定會帶上這個包,所以實際上是多余的包。

      jaas.jar:
      JAAS是用來進行權限驗證的,已經包含在JDK1.4里面了。所以實際上是多余的包。

      jcs.jar:
      如果你準備在Hibernate中使用JCS的話,那么必須包括它,否則就不用。

      jdbc2_0-stdext.jar:
      JDBC2.0的擴展包,一般來說數據庫連接池會用上它。不過App Server都會帶上,所以也是多余的。

      jta.jar:
      JTA規范,當Hibernate使用JTA的時候需要,不過App Server都會帶上,所以也是多余的。

      junit.jar:
      Junit包,當你運行Hibernate自帶的測試代碼的時候需要,否則就不用。

      xalan.jar, xerces.jar, xml-apis.jar:
      Xerces是XML解析器,Xalan是格式化器,xml-apis實際上是JAXP。一般App Server都會帶上,JDK1.4也包含了解析器,不過不是Xerces,是Crimson,效率比較差,不過Hibernate用XML只不過是讀取配置文件,性能沒什么緊要的,所以也是多余的
    posted on 2007-10-29 14:51 java2java 閱讀(1074) 評論(1)  編輯  收藏

    評論

    # re: JAVA進階--詳細解讀Hibernate包的作用 2007-10-29 16:02 CoderDream
    以前見過,很早就3.0了,這里還是講的2.0

    應該是轉貼的!  回復  更多評論
      


    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 亚洲人成网站日本片| 久久久久久亚洲AV无码专区| 亚洲AV无码成人网站在线观看 | 亚洲午夜成激人情在线影院| 久9这里精品免费视频| 久久亚洲国产欧洲精品一| a级日本高清免费看| 亚洲成AV人片在线观看无码| 无码精品人妻一区二区三区免费看 | 亚洲动漫精品无码av天堂| 最近的2019免费中文字幕| 国产日产亚洲系列| a级在线观看免费| 亚洲精品私拍国产福利在线| 免费能直接在线观看黄的视频| 亚洲人成在线精品| 在线播放高清国语自产拍免费| 国产AV日韩A∨亚洲AV电影| 国产精品亚洲产品一区二区三区| free哆拍拍免费永久视频| 亚洲国产精品久久| 人妻视频一区二区三区免费| 亚洲av乱码一区二区三区按摩 | 国产高清在线精品免费软件| 免费国产黄网站在线观看动图 | 久久亚洲免费视频| 亚洲六月丁香六月婷婷色伊人| 日韩中文字幕在线免费观看| 一区二区三区精品高清视频免费在线播放| 亚洲午夜未满十八勿入网站2| 2020因为爱你带字幕免费观看全集| 亚洲人成图片网站| 久久亚洲中文字幕精品一区四| 99re免费视频| 久久精品亚洲日本波多野结衣| 亚洲人成网77777色在线播放| 国产免费不卡视频| av网站免费线看| 亚洲av无码一区二区三区观看| 亚洲毛片不卡av在线播放一区| 最近2022中文字幕免费视频|