Hibernate3有哪些新特性

技术Hibernate3有哪些新特性小编给大家分享一下Hibernate3有哪些新特性,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!Hiber

边肖会和大家分享Hibernate3的新功能,相信大部分人都不是很了解,所以分享这篇文章给大家参考。希望你看完这篇文章会有很多收获。我们一起来看看吧!

Hibernate3新特性

Hibernate3大大提高了产品的适用性,在Java1.5的基础上进行了改进,并与EJB3.0进行了集成,大大提升了功能。同时,Hibernate还分析了另一个主流的开发平台,——微软的。NET平台,因此具有更强的生命力。

与Hibernate2相比,Hibernate3新特性的变化包括三个方面:

(1)原料药的变化。API变化中最显著的变化是包名的变化,主要是因为包的根路径发生了变化。对于这一点,程序员只需要看看Eclipse中Hibernate3.jar文件中包含的类:Hibernate 3的根路径已经从Hibernate2的. sf.hibernate变成了org.hibernate因为这两个路径完全不同,所以程序员可以在同一个应用中同时使用Hibernate2和Hibernate 3。如果你想把现有的应用升级到Hibernate3,升级的* * *步骤就是把Java源程序中的net.sf.hibernate全部替换为org.hibernate。

此外,在Hibernate3的新特性中,HibernateException及其所有子类都继承了Java.lang.RuntimeException因此,编译器在编译过程中不会再次检查HibernateException。在Hibernate3中,Session接口的createSQLQuery()方法被放弃,被移到org.hibernate.classic.Session接口。Hibernate3使用一个新的SQLQuery接口来完成同样的功能。一些新的方法也被添加到UserType和CompositeUserType接口中,这些接口已经被移动到org.hibernate.UserType包中。用户定义的usertype和CompositeUserType实现类必须实现这些新方法。Hibernate3提供了一个ParameterizedType接口,以便更好地重用用户定义的类型。

这些重大变化都会对应用产生影响,程序员必须做出相应的调整,才能让基于Hibernate3的应用正常运行。

(2)元数据元数据主要是指Hibernate映射文件中各种元素和属性的使用变化。首先,Hibernate映射文件的文档类型定义,也就是DTD文件发生了变化,程序员可以从任意一个Hibernate3映射文件的头部找到。也就是说,元素中定义的URL从http://hibernate.sourceforge.net/hibernate-mapping-2.0.dtd更改为http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd.

另一个显著的变化是lazy属性的默认值由false变为true,这也是Hibernate从优化应用性能的角度做出的决定。因为当lazy=false时,Hibernate对所有字段都采用预取策略。如果程序员想采用延迟加载,必须在映射文件中手动将lazy属性值设置为true。然而,总是采用预取策略必然会造成很大的资源占用,从而降低应用程序的性能。因此,从应用的角度来看,更希望lazy的默认值为true,以便在必要时可以采用预取的检索策略。

(3)HQL查询语句Hibernate3采用了新的基于ANTLR的HQL/SQL查询翻译器,但Hibernate2的查询翻译器依然存在。在Hibernate的配置文件中,hibernate.query.factory_class属性用于选择查询翻译器。

以上就是文章《冬眠3有什么新功能》的全部内容感谢您的阅读!相信大家都有一定的了解,希望分享的内容对大家有所帮助。想了解更多知识,请关注行业资讯频道!

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/136813.html

(0)

相关推荐

  • windows中链栈和顺序栈相比的优势是什么

    技术windows中链栈和顺序栈相比的优势是什么本篇内容介绍了“windows中链栈和顺序栈相比的优势是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧

    攻略 2021年11月9日
  • postgresql联表如何创建(postgresql动态添加过滤条件)

    技术用sequoiasql-postgresql创建一个关联表怎么优化本篇内容介绍了“用sequoiasql-postgresql创建一个关联表怎么优化”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下

    攻略 2021年12月22日
  • 幂的乘方50道计算题,求50道六年级计算题是方程

    技术幂的乘方50道计算题,求50道六年级计算题是方程64x 207=169 127x 61=117 78x 15=78 253x 161=165 18x 255=217 178x 115=178 97x 5=9 121x

    生活 2021年10月22日
  • oracle12c中如何导入java的jar文件

    技术oracle12c中如何导入java的jar文件这篇文章主要介绍oracle12c中如何导入java的jar文件,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完! 1、

    攻略 2021年11月11日
  • cloudflare视频转码接口怎么弄

    技术cloudflare视频转码接口怎么弄本篇文章给大家分享的是有关cloudflare视频转码接口怎么弄,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。 /

    攻略 2021年10月20日
  • 苹果手,苹果手音乐没声音怎么办

    技术苹果手,苹果手音乐没声音怎么办一)检查静音键
    1、在苹果手机正面左侧上有一个静音键苹果手,可以控制当前手机铃声。当发现手机没有提示声音时,请先检测是否打开了静音功能。
    (二)重新启动手机
    1、请长按苹果手机顶部的“电

    生活 2021年10月25日