若何把Hibernate2.1进级到Hibernate3.0[Java编程]
本文“若何把Hibernate2.1进级到Hibernate3.0[Java编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
固然Hibernate 3.0 与Hibernate2.1的源代码是不兼容的,但是当Hibernate开辟小组在计划Hibernate3.0时,为简化进级Hibernate版本作了周到的考虑.
关于现有的基于Hibernate2.1的Java项目,可以很便利的把它进级到Hibernate3.0.
本文描写了Hibernate3.0版本的新改变,Hibernate3.0版本的改变包含三个方面:
(1)API的改变,它将影响到Java程序代码.
(2)元数据,它将影响到对象-关系映射文件.
(3)HQL查询语句.
值得注意的是, Hibernate3.0并不会完好代替Hibernate2.1.在同一个利用程序中,答应Hibernate3.0和Hibernate2.1并存.
1 Hibernate API 改变
1.1 包名
Hibernate3.0的包的根途径为: “org.hibernate” ,而在Hibernate2.1中为“net.sf.hibernate”.这一命名改变使得Hibernate2.1和Hibernate3.0可以同时在同一个利用程序中运行.
假如但愿把已有的利用进级到Hibernate3.0,那么进级的第一步是把Java源程序中的全部“net.sf.hibernate”替换为“org.hibernate”.
Hibernate2.1中的“net.sf.hibernate.exdivssion”包被改名为“org.hibernate.criterion”.假定利用程序利用了Criteria API,那么在进级的历程中,必须把Java源程序中的全部“net.sf.hibernate.exdivssion”替换为“org.hibernate.criterion”.
假如利用利用了除Hibernate以外的其他外部软件,而这个外部软件又引用了Hibernate的接口,那么在进级时必须非常当心.比方EHCache拥有自己的CacheProvider: net.sf.ehcache.hibernate.Provider,在这个类中引用了Hibernate2.1中的接口,在进级利用时,可以采取以下办法之一来进级EHCache:
(1)手工改正net.sf.ehcache.hibernate.Provider类,使它引用Hibernate3.0中的接口.
(2)等到EHCache软件本身进级为利用Hibernate3.0后,利用新的EHCache软件.
(3)利用Hibernate3.0中内置的CacheProvider:org.hibernate.cache.EhCacheProvider.
1.2 org.hibernate.classic包
Hibernate3.0把一些被废弃的接口都转移到org.hibernate.classic中.
1.3 Hibernate所依靠的第三方软件包
在Hibernate3.0的软件包的lib目录下的README.txt文件中,描写了Hibernate3.0所依靠的第三方软件包的改变.
1.4 非常模子
在Hibernate3.0中,HibernateException非常以及它的全部子类都担当了java.lang.RuntimeException.因此在编译时,编译器不会再查抄HibernateException.
以上是“若何把Hibernate2.1进级到Hibernate3.0[Java编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
本文地址: | 与您的QQ/BBS好友分享! |