iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >Hibernate性能优化的方法有哪些
  • 146
分享到

Hibernate性能优化的方法有哪些

2023-06-17 20:06:34 146人浏览 安东尼
摘要

本篇内容主要讲解“Hibernate性能优化的方法有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Hibernate性能优化的方法有哪些”吧!尽量使用many-to-one,避免使用单项on

本篇内容主要讲解“Hibernate性能优化的方法有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Hibernate性能优化的方法有哪些”吧!

尽量使用many-to-one,避免使用单项one-to-many

灵活使用单向one-to-many

不用一对一,使用多对一代替一对一

配置对象缓存,不使用集合缓存

一对多使用Bag 多对一使用Set

继承使用显示多态  HQL:from object  polymorphism="exlicit" 避免查处所有对象

消除大表,使用二级缓存对于上面这些,我们进行了详细的讲解。

one-to-many:使用inverse=false(default),对象的关联关系是由parent对象来维护的,而inverse=true的情况下,一般用户双向多对多关联,由子对象维护关联关系,增加子对象的时候需要显示:child.setParent(child)为了提高性能,应该尽量使用双向one-to-many inverse=true,在mvc结构中的DAO接口中应该直接用Session持久化对象,避免通过关联关系(这句话有点不理解),而在单项关系中正确使用二级缓存,则可以大幅提高以查询为主的应用。

多对一性能问题比较少,但是要避免经典N+1问题。
通过主键进行关联,相当于大表拆分小表。(这个是区分面向对象设计和面向过程设计的一个关键点)
list、bag、set的正确运用one-to-many:

◆使用list 需要维护Index Column字段,不能被用于双向关联,而且必须使用inverse=false,需要谨慎使用在某些稀有场合(基本上是不予考虑使用)

◆bag/set在one-to-many中语义基本相同,推荐使用bag many-to-one:

◆bag和set不同,bag允许重复插入,建议使用set在庞大的集合分页中应该使用session.createFilter session.createFilter(parent.getChildren(),""),setFirstResult(0),setMaxResult(10))避免N+1 参考(Http://www.javaeye.com/post/266972)
在多对一的情况下,查询child对象,当在页面上显示每个子类的父类对象的时候会导致N+1次查询,需要采用下面的方法避免:many-to-one fetch="join|select"(该方法可能有问题)

inverse=true 无法维护集合缓存(还不是很理解集合缓存和对象缓存)
OLTP类型的WEB应用,可以群集水平扩展,不可避免的出现数据库瓶颈框架能降低访问数据库的压力,采用缓存是衡量一个框架是否优秀的重要标准,从缓存方面看Hibernate

◆对象缓存,细颗粒度,是针对表的级别,透明化访问,因为有不改变代码的好处,所以是ORM提高性能的法宝

◆Hibernate是目前ORM框架中缓存性能***的框架

◆查询缓存

***Robbin还针对大家经常出现的Hibernate vs iBatis的讨论进行了一个总结

对于OLTP应用,使用ORM框架 而OLEB应用(不确定是什么应用)***采用JDBC或者其他方法处理Hibernate倾向于细颗粒度设计,面向对象,将大表拆分为多个小表,消除冗余字段,通过二级缓存提升性能。

iBatis倾向于粗颗粒度设计,面向关系,尽量把表合并,通过Column冗余,消除关联关系,但是iBatis没有有效的缓存手段。

可以说我们的Hibernate性能优化总结对于使用Hibernate的开发人员有着很重要的点拨作用。

到此,相信大家对“Hibernate性能优化的方法有哪些”有了更深的了解,不妨来实际操作一番吧!这里是编程网网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

--结束END--

本文标题: Hibernate性能优化的方法有哪些

本文链接: https://www.lsjlt.com/news/293226.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Hibernate性能优化的方法有哪些
    本篇内容主要讲解“Hibernate性能优化的方法有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Hibernate性能优化的方法有哪些”吧!尽量使用many-to-one,避免使用单项on...
    99+
    2023-06-17
  • Hibernate HQL优化的方法有哪些
    这篇文章主要讲解了“Hibernate HQL优化的方法有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Hibernate HQL优化的方法有哪些”吧!初用Hibernate的人也许都遇...
    99+
    2023-06-17
  • react性能优化的方法有哪些
    1. 使用生命周期方法:React的生命周期方法可以帮助我们优化组件的性能。例如,使用shouldComponentUpdate方法...
    99+
    2023-09-13
    react
  • laravel性能优化的方法有哪些
    使用缓存:Laravel提供了多种缓存驱动,如Redis、Memcached等,可以将经常访问的数据进行缓存,减少数据库的查询次数...
    99+
    2023-10-28
    laravel
  • jQuery性能优化的方法有哪些
    今天小编给大家分享一下jQuery性能优化的方法有哪些的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。一、选择器性能优化建议1...
    99+
    2023-07-04
  • filebeat性能优化的方法有哪些
    以下是一些可以优化 Filebeat 性能的方法:1. 减少文件读取次数:通过将多个文件合并为一个文件,从而减少文件读取次数,可以使...
    99+
    2023-10-11
    filebeat
  • mysql性能优化的方法有哪些
    这篇文章将为大家详细讲解有关mysql性能优化的方法有哪些,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司...
    99+
    2022-10-18
  • Vue 性能优化的方法有哪些
    本篇内容介绍了“Vue 性能优化的方法有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!前言Vue 框架...
    99+
    2022-10-19
  • JavaScript性能优化的方法有哪些
    这篇文章主要讲解了“JavaScript性能优化的方法有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“JavaScript性能优化的方法有哪些”吧! ...
    99+
    2022-10-19
  • JavaScript的性能优化方法有哪些
    这篇文章主要讲解了“JavaScript的性能优化方法有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“JavaScript的性能优化方法有哪些”吧!无论...
    99+
    2022-10-19
  • android性能优化的方法有哪些
    Android性能优化的方法有以下几种:1. 代码优化:通过对代码进行优化,包括减少计算量、减少内存占用、减少I/O操作等,提高代码...
    99+
    2023-08-24
    android
  • centos性能优化的方法有哪些
    使用最新的稳定版本的CentOS操作系统,以获得最新的性能优化和修复。 硬件优化:确保硬件设备(CPU、内存、硬盘)能够满足...
    99+
    2023-10-23
    centos
  • python性能优化的方法有哪些
    Python性能优化的方法有:1. 使用更高效的算法和数据结构:选择合适的算法和数据结构可以减少时间和空间复杂度,从而提高性能。2....
    99+
    2023-09-08
    python
  • php性能优化的方法有哪些
    有以下几种常用的 PHP 性能优化方法:1. 使用缓存:通过使用缓存技术,将一些常用的计算结果或数据库查询结果缓存起来,减少重复的计...
    99+
    2023-09-26
    php
  • vps性能优化的方法有哪些
    1. 优化服务器配置:根据应用需求和实际使用情况调整服务器配置,包括CPU、内存、磁盘空间等,以提高服务器性能。2. 使用缓存技术:...
    99+
    2023-05-23
    vps性能优化 vps
  • weblogic性能优化的方法有哪些
    WebLogic性能优化的方法有以下几种:1. 调整JVM参数:通过调整JVM参数可以优化WebLogic的性能。例如,增加堆内存的...
    99+
    2023-09-01
    weblogic
  • ListView之性能优化的方法有哪些
    ListView的性能优化方法包括:1. 使用ViewHolder模式:通过在getView()方法中使用ViewHolder来缓存...
    99+
    2023-09-26
    ListView
  • Oracle SQL性能优化的方法有哪些
    本篇内容主要讲解“Oracle SQL性能优化的方法有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Oracle SQL性能优化的方法有哪些”吧!1. SQ...
    99+
    2022-10-19
  • Web前端性能的优化方法有哪些
    这篇文章主要讲解了“Web前端性能的优化方法有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Web前端性能的优化方法有哪些”吧!  Web前端性能优化的结果直接影响到用户体验,而用户体验...
    99+
    2023-06-04
  • android开发性能优化的方法有哪些
    Android开发性能优化的方法有以下几种:1.减少内存使用:通过使用轻量级数据结构、避免创建不必要的对象、及时释放无用的资源等方式...
    99+
    2023-09-13
    android
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作