`
letitbe
  • 浏览: 239511 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

升级到hibernate3.2

阅读更多

1,从Hibernate 3.0.x/3.1.x升级到最新的3.2版,一定要注意,3.2版的很多sql函数如count(), sum()的唯一返回值已经从Integer变为Long,如果不升级代码,会得到一个ClassCastException。

这个变化主要是为了兼容JPA,可以在hibernate.org的最新文档中找到说明。

Hibernate Team也提供了一个与原来兼容的解决方案:

  Configuration classicCfg = new Configuration();
  classicCfg.addSqlFunction( "count", new ClassicCountFunction());
  classicCfg.addSqlFunction( "avg", new ClassicAvgFunction());
  classicCfg.addSqlFunction( "sum", new ClassicSumFunction());
  SessionFactory classicSf = classicCfg.buildSessionFactory();

int count = ((Integer)q.uniqueResult()).intValue();

改成 int count = ((Number)q.uniqueResult()).intValue(); 这样就可以两个版本同时兼容.

2,hibernate3.2要求ehcache1.2

3,session.createSQLQuery(sql).executeUpdate();这个hibernate3.0.5不支持,而hibernate3.2支持

  session.createSQLQuery(fsql).addScalar("singlevalue",
                        Hibernate.DOUBLE).uniqueResult();这个到了3.2就不需要addScalar了.

4,session.createSQLQuery(sql).addEntity(Class class);hibernate3.0.5不支持,单个参数的addEntity方法

5,hibernate3.2可以对原生sql 查询使用ResultTransformer。这会返回不受Hibernate管理的实体。
sess.createSQLQuery("SELECT NAME, BIRTHDATE FROM CATS")
        .setResultTransformer(Transformers.aliasToBean(CatDTO.class))
上面的查询将会返回CatDTO的列表,它将被实例化并且将NAME和BIRTHDAY的值注射入对应的属性或者字段。
http://bbs.xml.org.cn/blog/more.asp?name=lhwork&id=15351


 

分享到:
评论

相关推荐

    hibernate3.2课件共31页.pdf.zip

    【hibernate3.2课件共31页.pdf.zip】这个压缩文件包含了关于Hibernate 3.2的详细教学资料,共计31页。Hibernate是一个非常重要的Java持久化框架,它简化了数据库操作,使开发者能够更加专注于业务逻辑而不是数据库...

    hibernate3.2

    Hibernate 3.2 是一个历史悠久但仍然非常重要的Java持久化框架版本,它为开发者提供了方便的...尽管现在有更新的版本,但Hibernate 3.2仍然是许多遗留系统的基础,理解其工作原理对维护和升级这些系统具有重要意义。

    Hibernate3.2指南

    《Hibernate3.2指南》是针对Hibernate框架3.2版本的深入指导,旨在帮助开发者全面理解和掌握这一流行的对象关系映射(ORM)工具。Hibernate作为Java领域中最成熟、最广泛使用的ORM解决方案之一,其3.2版本在继承了...

    ecside+struts2+spring2.5+hibernate3.2

    标题 "ecside+struts2+spring2.5+hibernate3.2" 提及的是一个基于Java的Web开发框架组合,这个组合是企业级应用的常见选择,特别是对于那些需要强大持久层、业务层和表现层管理的项目。让我们逐一深入探讨这四个关键...

    Struts 2.0整合Hibernate 3.2开发注册登录系统

    接着,将Struts 2.0和Hibernate 3.2的相关jar包添加到项目的lib目录下。接下来,需要在src目录下创建hibernate配置文件`hibernate.cfg.xml`,并进行相应的配置。 #### 三、Hibernate配置详解 ```xml <!DOCTYPE ...

    struts2.0+spring2.5+hibernate3.2架构

    Struts2.0、Spring2.5和Hibernate3.2是经典的Java企业级开发框架组合,被称为SSH架构。这个架构组合在2000年代末到2010年初非常流行,为大型企业级应用提供了强大的模型-视图-控制器(MVC)支持、依赖注入(DI)以及...

    struts2hibernate3.2spring2.5帮助文档

    Struts2、Hibernate3.2和Spring2.5是Java Web开发中著名的SSH(Struts2、Spring、Hibernate)框架的三个核心组件。这组框架的整合为开发者提供了强大的MVC(模型-视图-控制器)架构支持,使得企业级应用的开发变得...

    hibernate学习资料

    此书籍可以帮助读者了解升级到Hibernate3.2后的变化和新功能的使用方法。 四、Hibernate In Action 《Hibernate In Action 1.pdf》是一本权威的Hibernate教程,书中不仅详细讲解了Hibernate的核心概念和技术,还...

    spring3.0+struts2.1.8+hibernate3.2完整jar包

    spring3.0+struts2.1.8+hibernate3.2完整jar包 ,保证非常全,放心下载使用。请使用struts2.1.8,如果你已经在学习2.1.6版本,并且遇到类似xwork的异常,导致tomcat无法正常启动,可将struts2.1.8和xwork2.1.6两个包...

    myeclipse7.0整合spring2.5+hibernate3.2+jsf(myfaces)

    本文将详细介绍如何在MyEclipse7.0环境下整合Spring2.5、Hibernate3.2以及JSF(MyFaces),并提供详细的步骤。首先,确认开发环境:MyEclipse7.0、JDK1.6以及Tomcat6.0。 **1. 创建Web Project工程** 创建一个新的...

    Myeclipse6.5GA struts1.2 spring2.5 hibernate3.2 整合实例(非常详细).docx

    【SSH整合详解】 ...不过要注意,随着技术的发展,Struts1.2和Hibernate3.2可能已经不再是最新的版本,考虑升级到更现代的框架,如Struts2、Spring Boot和Hibernate5,可以获取更多的功能和性能提升。

    Struts2.Hibernate3.2.Spring2.0整合项目代码的jar包

    Struts2、Hibernate3.2和Spring2.0是Java Web开发中著名的三大框架,它们分别负责MVC(模型-视图-控制器)架构、对象关系映射(ORM)和依赖注入(DI)及应用上下文管理。这些框架的整合可以提供一个高效、灵活且可...

    Hibernate3.2官方中文参考手册

    <br>翻译说明 本文档的翻译是在网络上协作进行的,也会不断根据Hibernate的升级进行更新。提供此文档的目的是为了减缓学习Hibernate的坡度,而非代替原文档。我们建议所有有能力的读者都直接阅读英文原文。...

    投票系统struts2.0+hibernate3.2+spring2.5+sqlserver2005数据库,+JFReeChart饼图,柱状图显示。

    这是一个基于Java技术栈的投票系统实现,主要使用了Struts2.0作为MVC框架,Hibernate3.2作为持久层框架,Spring2.5作为应用上下文和依赖注入框架,以及SQL Server 2005作为后端数据库。此外,项目还引入了JFreeChart...

    Hibernate3.2 Struts2.0 Spring2.5中文参考文档

    SSH(Struts、Spring、Hibernate)是Java Web开发中经典的三大框架,它们分别负责MVC模式中的表现层、业务层和服务层。...在实际项目中,SSH的集成能够大大提高开发效率,减少重复代码,并且便于维护和升级。

    官方原版hibernate-3.2.ga.zip

    Hibernate是一个开源的对象关系映射(ORM)框架,它在Java编程环境中广泛使用,极大地简化了数据库操作。在Java应用程序中,Hibernate...然而,对于已有的3.2.ga项目,维护和升级需要谨慎,以确保与现有代码的兼容性。

    hibernate校验 jar包

    这些注解可以直接添加到实体类的字段上,或者在getter方法上,以控制验证的时机。 四、自定义校验 除了预定义的注解外,Hibernate校验还支持自定义验证注解和约束。通过实现`ConstraintValidator`接口,可以创建...

    Hibernate v3.2中文参考手册

    Hibernate v3.2是该框架的一个版本,它提供了一整套的机制将Java对象映射到数据库中的表,并且提供了数据查询和获取数据的方式。 Hibernate v3.2中文参考手册主要包含了以下几个方面的知识点: 1. 实体映射:实体...

    hibernate升级到3.2带来EHCache的问题

    NULL 博文链接:https://yongtree.iteye.com/blog/272293

    hibernate-entitymanager-3.2.jar.zip

    8. **兼容性与升级**:在从较旧的 Hibernate 版本升级到 3.2 时,开发者需要注意可能存在的API变化和配置差异。例如,从3.2升级到3.4.0.GA,虽然主要功能保持一致,但可能会有新的特性加入和已知问题修复,需要查看...

Global site tag (gtag.js) - Google Analytics