|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
对于一个大型项目,如果用java来作,可能需要9个月,并且可能需要翻阅10本以上的书,但如果用ruby来作,3个月,3本书就足够了,而.net也不过3,4本书足以,这就是区别。
只管Hibernate3.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并存。
1HibernateAPI变更
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”。假设使用程序利用了CriteriaAPI,那末在晋级的过程当中,必需把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.2org.hibernate.classic包
Hibernate3.0把一些被放弃的接口都转移到org.hibernate.classic中。
1.3Hibernate所依附的第三方软件包
在Hibernate3.0的软件包的lib目次下的README.txt文件中,形貌了Hibernate3.0所依附的第三方软件包的变更。
1.4非常模子
在Hibernate3.0中,HibernateException非常和它的一切子类都承继了java.lang.RuntimeException。因而在编译时,编译器不会再反省HibernateException。
<p>
为什么外国人还要写那些框架进行代码封装,他们不就是为了别人使用时可以更简单么!如果要达到一个企业级项目的不用框架是很难的。小一些的项目还行,大的光是MVC模式的设计的编码量就够大的了。还有性能方面,单轮windows,这个工具是微软写的,。 |
|