Hibernate包作用详解

 我来答
天然槑17
2022-11-04 · TA获得超过1.1万个赞
知道大有可为答主
回答量:6288
采纳率:100%
帮助的人:35.3万
展开全部

  Hibernate一共包括了 个jar包 令人眼花缭乱 本文将详细讲解Hibernate每个jar包的作用 便于你在应用中根据自己的需要进行取舍

  下载Hibernate 例如 稳定版本 解压缩 可以看到一个hibernate jar和lib目录下有 个jar包

  hibernate jar:

  Hibernate的库 没有什么可说的 必须使用的jar包

  cglib a *** jar:

  CGLIB库 Hibernate用它来实现PO字节码的动态生成 非常核心的库 必须使用的jar包

  dom j jar:

  dom j是一个Java的XML API 类似于jdom 用来读写XML文件的 dom j是一个非常非常优秀的Java XML API 具有性能优异 功能强大和极端易用使用的特点 同时它也是一个开放源代码的软件 可以在SourceFe上找到它 在IBM developerWorks上面可以找到一篇文章 对主流的Java XML API进行的性能 功能和易用性的评测 dom j无论在那个方面都是非常出色的 我早在将近两年之前就开始使用dom j 直到现在 如今你可以看到越来越多的Java软件都在使用dom j来读写XML 特别值得一提的是连Sun的JAXM也在用dom j 这是必须使用的jar包 Hibernate用它来读写配置文件

  odmg jar:

  ODMG是一个ORM的规范 Hibernate实现了ODMG规范 这是一个核心的库 必须使用的jar包

  mons collections jar

  Apache Commons包中的一个 包含了一些Apache开发的集合类 功能比java util *强大 必须使用的jar包

  mons beanutils jar

  Apache Commons包中的一个 包含了一些Bean工具类类 必须使用的jar包

  mons lang jar:

  Apache Commons包中的一个 包含了一些数据类型工具类 是java lang *的扩展 必须使用的jar包

  mons logging jar:

  Apache Commons包中的一个 包含了日志功能 必须使用的jar包 这个包本身包含了一个Simple Logger 但是功能很弱 在运行的时候它会先在CLASSPATH找log j 如果有 就使用log j 如果没有 就找JDK 带的java util logging 如果也找不到就用Simple Logger mons logging jar的出现是一个历史的的遗留的遗憾 当初Apache极力游说Sun把log j加入JDK 然而JDK 项目小组已经接近发布JDK 产品的时间了 因此拒绝了Apache的要求 使用自己的java util logging 这个包的功能比log j差的很远 性能也一般

  后来Apache就开发出来了mons logging jar用来兼容两个logger 因此用mons logging jar写的log程序 底层的Logger是可以切换的 你可以选择log j java util logging或者它自带的Simple Logger 不过我仍然强烈建议使用log j 因为log j性能很高 log输出信息时间几乎等于System out 而处理一条log平均只需要 us 你可以在Hibernate的src目录下找到Hibernate已经为你准备好了的log j的配置文件 你只需要到Apache 网站去下载log j就可以了 mons logging jar也是必须的jar包

  使用Hibernate必须的jar包就是以上的这几个 剩下的都是可选的

  ant jar:

  Ant编译工具的jar包 用来编译Hibernate源代码的 如果你不准备修改和编译Hibernate源代码 那么就没有什么用 可选的jar包

  optional jar

  Ant的一个辅助包

  c p jar

  C PO是一个数据库连接池 Hibernate可以配置为使用C PO连接池 如果你准备用这个连接池 就需要这个jar包

  proxool jar

  也是一个连接池 同上

  mons pool jar mons dbcp jar:

  DBCP数据库连接池 Apache的Jakarta组织开发的 Tomcat 的连接池也是DBCP

  实际上Hibernate自己也实现了一个非常非常简单的数据库连接池 加上上面 个 你实际上可以在Hibernate上选择 种不同的数据库连接池 选择哪一个看个人的偏好 不过DBCP可能更通用一些 另外强调一点 如果在EJB中使用Hibernate 一定要用App Server的连接池 不要用以上 种连接池 否则容器管理事务不起作用

  connector jar:

  JCA 规范 如果你在App Server上把Hibernate配置为Connector的话 就需要这个jar 不过实际上一般App Server肯定会带上这个包 所以实际上是多余的包

  jaas jar:

  JAAS是用来进行权限验证的 已经包含在JDK 里面了 所以实际上是多余的包

  jcs jar

  如果你准备在Hibernate中使用JCS的话 那么必须包括它 否则就不用

  jdbc _ stdext jar:

  JDBC 的扩展包 一般来说数据库连接池会用上它 不过App Server都会带上 所以也是多余的

  jta jar

  JTA规范 当Hibernate使用JTA的时候需要 不过App Server都会带上 所以也是多余的

  junit jar:

  Junit包 当你运行Hibernate自带的测试代码的时候需要 否则就不用

  xalan jar xerces jar xml apis jar:

lishixinzhi/Article/program/Java/ky/201311/28745

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
AiPPT
2024-12-03 广告
作为北京饼干科技有限公司的一员,对于市场上各类工具都有所了解。就AiPPT而言,它确实为用户提供了便捷高效的PPT制作体验。通过智能化的辅助功能,用户能够快速生成专业且富有创意的演示文稿,极大地节省了时间和精力。无论是对于个人用户还是企业团... 点击进入详情页
本回答由AiPPT提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式