hibernate下载(如何学习hibernate源码)
大家好,如果您还对hibernate下载不太了解,没有关系,今天就由本站为大家分享hibernate下载的知识,包括如何学习hibernate源码的问题都会给大家分析到,还望可以解决大家的问题,下面我们就开始吧!
Hibernate包作用详解
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如何学习hibernate源码
学习 Hibernate源码一
1.下载 hibernate源码,并构建起 eclipse项目
( 1) hibernate的源代码采用 git管理,安装 git客户端以后,通过点击 github.com/hibernate/hibernate-orm页面右侧的“ Clone in Desktop”可启动客户端将代码 clone到本地。当然也可以直接使用
git clone git://github.com/hibernate/hibernate-orm.git
命令下载代码。
下载完毕后,打开根目录下的 readme文件,可以看到详细的把源代码构建为不同 IDE项目的说明;以及其他的一些信息。
对应文档的网站链接:
community.jboss.org/wiki/BuildingHibernateORM4x5x
构建 IDE部分:
Eclipse
To create the Eclipse project files you can run
After changes to the dependencies you need to clean the project files and recreate them:
./gradlew cleanEclipse eclipse
See also Contributing to Hibernate using Eclipse
Idea
To create the Idea project files you can run
./gradlew idea
After changes to the dependencies you need to clean the project files and recreate them:
./gradlew cleanIdea idea
此处的 gradle是 hibernate所使用的自动构建工具,官网地址为:
.gradle.org/
下载地址为:.gradle.org/downloads,选择一个版本进行下载
此处是 Hibernate团队阐述其从 Maven迁移到 Gradle的原因: community.jboss.org/wiki/GradleWhy
至于 grable,有时间会深入学习一下,感兴趣的同学可以看看这位博主的博客:
.blogjava.net/wldandan/archive/2012/06/26/381532.html
言归正传,下载 grable后,解压,我将其解压到了 C盘根目录,解压完毕的 grable所在目录为: C:\gradle-1.7,将其子目录 C:\gradle-1.7\bin目录加入系统的 Path变量
编译代码为 eclipse项目:
( 1)进入 hibernate源码的根目录:
cd C:\Users\Administrator\Documents\GitHub\hibernate-orm
( 2)执行 gradlew.bat eclipse
接着会自动下载项目所需要的依赖项,具体输出如下:
C:\Users\Administrator\Documents\GitHub\hibernate-orm>gradlew.bat eclipse
Creating properties on demand(a.k.a. dynamic properties) has been deprecated and is scheduled to be removed in Gradle 2.0. Please read gradle.org/docs/current/dsl/org.gradle.api.plugins.ExtraPropertiesExtension.html for information on
Deprecated dynamic property:"exportPackageVersion" on"project':documentation'", value:"4.3.0".
Deprecated dynamic property"exportPackageVersion" created in multiple locations.
FAILURE: Build failed with an exception.
* Where:
Build file'C:\Users\Administrator\Documents\GitHub\hibernate-orm\build.gradle' line: 85
* What went wrong:
A problem occurred evaluating root project'hibernate-orm'.
> org/hibernate/build/gradle/publish/auth/maven/AuthenticationManager: Unsupported major.minor version 51.0
* Try:
Run with--stacktrace option to get the stack trace. Run with--info or--debug option to get more log output.
此时我去查看我的环境变量, JAVA_HOME指向的是 64位的 JDK6,将其指向 32位 JDK7后再次执行
gradlew.bat eclipse
发现此时 gradlew又去下载了其他的依赖包,查看 hibernate-rom目录下的 libraries.gradle文件,可以看到 hibernate的依赖包。
重新编译过程中还是报错了,具体错误:
:hibernate-core:compileJava
警告: [options]未与-source 1.6一起设置引导类路径
C:\Users\Administrator\Documents\GitHub\hibernate-orm\hibernate-core\src\main\java\org\hibernate\annotations\Loader.java:38:错误:编码 GBK的不可映射字符
*@author L锟絪 zl锟?Benke
^
C:\Users\Administrator\Documents\GitHub\hibernate-orm\hibernate-core\src\main\java\org\hibernate\annotations\ResultCheckStyle.java:29:错误:编码 GBK的不可映射字符
*@author L锟絪 zl锟?Benke
^
C:\Users\Administrator\Documents\GitHub\hibernate-orm\hibernate-core\src\main\java\org\hibernate\annotations\SQLDelete.java:37:错误:编码 GBK的不可映射字符
*@author L锟絪 zl锟?Benke
^
C:\Users\Administrator\Documents\GitHub\hibernate-orm\hibernate-core\src\main\java\org\hibernate\annotations\SQLDeleteAll.java:37:错误:编码 GBK的不可映射字符
*@author L锟絪 zl锟?Benke
^
C:\Users\Administrator\Documents\GitHub\hibernate-orm\hibernate-core\src\main\java\org\hibernate\annotations\SQLInsert.java:37:错误:编码 GBK的不可映射字符
*@author L锟絪 zl锟?Benke
^
C:\Users\Administrator\Documents\GitHub\hibernate-orm\hibernate-core\src\main\java\org\hibernate\annotations\SQLUpdate.java:37:错误:编码 GBK的不可映射字符
*@author L锟絪 zl锟?Benke
^
注:某些输入文件使用或覆盖了已过时的 API。
注:有关详细信息,请使用-Xlint:deprecation重新编译。
注:某些输入文件使用了未经检查或不安全的操作。
注:有关详细信息,请使用-Xlint:unchecked重新编译。
1个警告
google了一下,貌似是区域语言设置的问题,需要修改为“英语(英国)”,但编译并没用中断,接着编译。我将控制面板中的区域语言设置修改后,继续观察,看其是否还会报同样的错误。
最终还是失败了:
:hibernate-entitymanager:compileJava
警告: [options]未与-source 1.6一起设置引导类路径
C:\Users\Administrator\Documents\GitHub\hibernate-orm\hibernate-entitymanager\src\main\java\org\hibernate\jpa\AvailableSettings.java:290:错误:编码 GBK的不可映射字符
* contains钬淐 REATE SCHEMA钬?commands. If this property is not supplied(or is explicitly{@code false}), the
^
注:某些输入文件使用或覆盖了已过时的 API。
注:有关详细信息,请使用-Xlint:deprecation重新编译。
注:某些输入文件使用了未经检查或不安全的操作。
注:有关详细信息,请使用-Xlint:unchecked重新编译。
如何在eclipse中安装Hibernate Tools
今天在看hibernate的视频,当讲到eclipse安装hibernate插件时,视频中的方法是安装本地的一个文件,可我电脑里并没有,于是找网上的在线安装方法,发现有两种,下面介绍这两种——>具体见图解
一、eclipse——>help——>Eclipse Marketplace——>输入Hibernate tools搜索,找到JBoss Tools选项,然后点击右下角的install按钮,找到hibernate tools,然后只勾选hibernate tools进行安装。
这一方法因为我的mars版本没有搜到JBoss Tools选项(首页没有,之后也懒得找了),所以没有安装成功,下面贴出网上的图片作为参考。。
之后一路next...
二、eclipse——>help——>Install New Software——>点击add(也可以在Work with输入地址)——>填写(见下图)——>next.......
贴上网址:http://download.jboss.org/jbosstools/updates/stable
因为要从网上下载,所以安装时需要耐心等待
安装成功之后要重启才能生效,测试方法是重启之后找个项目右键src目录,New——>Other——>输入hibernate,就能看到
算是基本安装成功了,后面要验证该插件是否存在问题,一路next即可,就不一一赘述了,结果文件内容如下
ok...
文章到此结束,希望我们对于hibernate下载和如何学习hibernate源码的问题能够给您带来一些启发和解决方案。如果您需要更多信息或者有其他问题,请随时联系我们。