将Hibernate从3.0版升级到3.6版

pav*_*imo 5 java hibernate hibernate-mapping java-ee

我正在研究一个使用Hibernate 3.0(2005年发布)的项目,尽管该项目本身只有4个月的历史.问题是我们已经编写了数百万行代码.我们意识到我们Hibernate 3.0只在昨天使用,现在我们非常希望转向最新的稳定版本3.6.6.

所以我想知道:

  • 我们映射hbm文件的方式会有很多变化吗?(和属性文件)
  • 我们是否可能在性能方面取得重大改进?(目前由于Hibernate的查询结构错误,我们遇到了一些性能问题)
  • 我们编写HQL的方式会有很多变化吗?(我们大量使用HQL)

感谢您的帮助.

Ken*_*han 3

我认为你应该阅读Hibernate3 迁移指南,从 3.0 逐步升级到 3.6 Hibernate

这是hibernate 变更日志中关于 3.0 到 3.6 的性能改进和路径的快速搜索

  • [HHH-5823] - UpdateTimestampsCache 类中的多线程性能较差
  • [HHH-5824] - SessionFactoryImpl.getQueryCache 方法中的多线程性能较差
  • [HHH-3860] - 当会话包含许多实体时出现级联性能问题
  • [HHH-3357] - 提高 session.clear() 的性能
  • [HHH-2553] - 新的 LoadContexts 实现可能导致性能下降
  • [HHH-2957] - ActionQueue 插入排序性能呈指数下降 (Jay Erb)
  • [HHH-2553] - 新的 LoadContexts 实现可能导致性能下降
  • [HHH-2229] - 修复了 HHH-1293 的性能问题,对于某些 Java 类,CGLIBLazyInitializer 可能会更慢
  • [HHH-2023] - JTATransactionFactory.isTransactionInProgress() 的性能优化
  • [HHH-864] - 对带有过滤器的会话使用 QUERY_CACHE 以提高性能
  • [HHH-525] - cglib 相关的启动性能

您可以在Hibernate JIRA中搜索每个项目的详细信息。祝您好运