入门 01 - Hibernate所需类别库
Hibernate是ORM的解决方案,其底层对数据库的操作依赖于JDBC,所以您必须先取得JDBC驱动程序,在这边我们使用的是MySQL,所以您必须至以下网址先取得MySQL的JDBC驱动程序:
JDBC驱动程序
接下来取得Hibernate,在撰写此文的同时,Hibernate最后的稳定版本是2.1.6,而3.0版还在测试阶段,这边的介绍将以2.1.6为主,所以请至以下网址取得hibernate-2.1.6.zip:
Hibernate官方网站
解开hibernate-2.1.6.zip后,当中的hibernate2.jar是必要的,而在lib目录中还包括了许多jar档案,其中 dom4j、CGLIB、Commons Collections、Commons Logging、ODMG4、EHCache是必要的,而Log4j则是建议使用的,为何使用这些jar,在Hibernate参考手册中有说明,您可以开启doc/reference中的参考手册,有英文版与简体中文版的介绍,档案格式则提供有html与pdf两种,以下列出简体中文中的说明:
- dom4j(必需):Hibernate在解析XML配置和XML映像元文件时需要使用dom4j。
- CGLIB(必需):Hibernate在运行时使用这个代码生成库强化类(与Java反射机制联合使用)。
- Commons Collections, Commons Logging(必需):Hibernate使用Apache Jakarta Commons项目提供的多个工具类库。
- ODMG4(必需):Hibernate提供了一个可选的ODMG兼容持久化管理界面。如果你需要映像集合,你就需要这个类库,就算你不是为了使用ODMG API。
- EHCache(必需):Hibernate可以使用不同的第二级Cache方案。如果没有修改配置的话,EHCache提供默认的Cache。
- Log4j(可选):Hibernate使用Commons Logging API,后者可以使用Log4j作为底层实施log的机制。如果上下文类目录中存在Log4j库,Commons Logging就会使用Log4j和它在上下文类路径中找到的log4j.properties文件。在Hibernate发行包中包含有一个示例的 properties文件。所以,如果你想看看幕后到底发生了什么,也把log4j.jar拷贝到你的上下文类路径去吧(它位于src/目录中)。
以上是Hibernate参考手册所列出的jar档案,Hibernate底层还需要Java Transaction API,所以您还需要jta.jar,到这边为止,总共需要十个jar档案:
mysql-connector-java-3.0.14-production-bin.jar
jta.jar
hibernate2.jar
cglib-full-2.0.2.jar
commons-collections-2.1.1.jar
commons-logging-1.0.4.jar
dom4j-1.4.jar
ehcache-0.9.jar
log4j-1.2.8.jar
odmg-3.0.jar
其它的jar档案则视您的需要来设定,例如您应该也会使用到Ant,这对于自动化建构Hibernate有相当的帮助,您可以先查看我另一个版面上有关于Ant的介绍:
Ant入门
Hibernate可以运行于单机之上,也可以运行于Web应用程序之中,如果是运行于单机,则将所有用到的jar档案(包括JDBC驱动程序)设定至 CLASSPATH中,如果是运行于Web应用程序中,则将jar档案置放于WEB-INF/lib中,其中JDBC驱动程序也可以依赖于JNDI 来取得资源,设定的方式之后介绍,或者您也可以先看看这篇文章有关于DBCP的介绍:
DBCP介绍
准备好这些档案后,我们下一个主题将介绍一个快速入门的例子。