`
webook_java
  • 浏览: 58412 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类

Hibernate性能优化策略

阅读更多
1)缓存机制
a)基本缓存——Session缓存(一级缓存)
Session中保存了一个Map(id-->PO)
PO(持久化对象)
b)二级缓存(全局缓存)——SessionFactory
1、过度使用的问题:内存会被过度占用,
会导致系统性能急剧下降。
2、使用条件:
i)缓存的数据比较稳定(变动不频繁)(如 部门)
ii)缓存的数据使用比较频繁(缓存的命中率)
c)启用二级缓存
在“hibernate.cfg.xml”的<session-factory>中加入属性——
<property name="hibernate.cache.provider_class">
org.hibernate.cache.OSCacheProvider
</property>
d)使用二级缓存
缓存方式:read-only;read-write
两个级别——类级别和集合级别
使用语法:在<class>或<set>(集合)里面加入——
<cache usage="read-only | read-write" />

1)read-only (只读)
一般包括系统参数
<class name="SystemParameter" table="t_syspara" mutable="false">
<cache usage="read-only"/>
<id name="id" type="integer" column="id">
<generator class="native" />
</id>
</class>

2)read-write (可写)
<class name="Dept" table="t_dept">
        <cache usage="read-write" />
       
        <set name="emps">
        <cache usage="read-write" />
        ...
        </set>
    </class>

2)延缓加载
a、在绝大多数情况下是很有用的
如 order(items)
b、取消延缓加载的方法
i)<class  ...  lazy="false" />
ii)关联映射中,关联的地方用“fetch="join"”
<many-to-one name="dept" class="Dept" column="dept_id" fetch="join"/>


3)批量抓取
"batch-size=10"
用在<class>或<set>(集合)
a、class
用Emp来抓取Dept
<class name="Dept" batch-size="10" >

b、set
用Order来抓取Items
<class name="Order"...>
...
<set ... batch-size="3">
</set>
</class>
分享到:
评论

相关推荐

    Hibernate性能优化策略.

    Hibernate性能优化策略.详细描述了java性能优化的各种策略高清

    Hibernate3性能优化 Hibernate_regerence3.12

    的效率低于直接JDBC存取,然而,在经过比较好的性能优化之后,Hibernate的性能还是让人相当满意的, 特别是应用二级缓存之后,甚至可以获得比较不使用缓存的JDBC更好的性能,下面介绍一些通常的 Hibernate的优化策略...

    hibernate优化

    有很多人认为Hibernate天生效率比较低,确实,在普遍情况下,需要将执行转换为SQL语句的Hibernate的效率低于直接JDBC 存取,然而,在经过比较好的性能优化之后,Hibernate的性能还是让人相当满意的,特别是应用二级...

    Hibernate3.2学习笔记

    Hibernate环境搭建 Hibernate主要接口 Hibernate主要映射 Hibernate的lazy、fetch、cascade等策略 Hibernate性能优化

    08.拓薪教育-hibernate4.3的hibernate.cfg.xml基本配置.part2

    主键生成策略使用,PO对象状态及状态的转换分析、一级缓存,Hibernate数据检索技术,Hibernate高级映射技术,Hibernate多表联合查询, Hibernate二级缓存技术,Hibernate分页技术,Hibernate性能优化技术。...

    Hibernate学习笔记

    001 Hibernate 简介(开源 O/R 映射框架) 002 第一个 Hibernate 示例 003 hibernate 主要接口介绍 004 持久对象的生命周期介绍 005 query 接口初步 ...028 hibernate 缓存(性能优化策略) 029 hibernate 抓取策略

    08.拓薪教育-hibernate4.3的hibernate.cfg.xml基本配置.part1

    主键生成策略使用,PO对象状态及状态的转换分析、一级缓存,Hibernate数据检索技术,Hibernate高级映射技术,Hibernate多表联合查询, Hibernate二级缓存技术,Hibernate分页技术,Hibernate性能优化技术。...

    05.拓薪教育-hibernate4.3环境搭建上.part1

    主键生成策略使用,PO对象状态及状态的转换分析、一级缓存,Hibernate数据检索技术,Hibernate高级映射技术,Hibernate多表联合查询, Hibernate二级缓存技术,Hibernate分页技术,Hibernate性能优化技术。...

    精通hibernate

    Hibernate入门 OR映射技术 通过Hibernate API操纵数据库 检索策略和方式 数据库事务、并发、缓存与性能优化 高级配置。

    马士兵hibernate学习笔记(原版)

    性能优化 1 注意session.clear()的运用,尤其在不断分页循环的时候 2 1+N问题 (典型的面试题) (详见 hibernate_2800_Hibernate_1+N项目) 3 list和iterate不同之处(//主要为了面试 详见hibernate_2900_...

    Hibernate开发的相关知识

    理解O/R Mapping原理 掌握Hibernate开发的相关知识 能使用Hibernate进行实际项目开发 Hibernate高手进级:性能优化策略

    Hibernate基础教程

    文档内容包括:Hibernate入门、OR映射技术、通过Hibernate API操纵数据库、检索策略和方式、数据库事务、并发、缓存与性能优化、高级配置

    Hibernate java对象持久化技术.ppt

    Hibernate入门 OR映射技术 通过Hibernate API操纵数据库 检索策略和方式 数据库事务、并发、缓存与性能优化 高级配置

    03.拓薪教育-hibernate4.3架构详解

    主键生成策略使用,PO对象状态及状态的转换分析、一级缓存,Hibernate数据检索技术,Hibernate高级映射技术,Hibernate多表联合查询, Hibernate二级缓存技术,Hibernate分页技术,Hibernate性能优化技术。...

    01.拓薪教育-hibernate4.3介绍-序

    主键生成策略使用,PO对象状态及状态的转换分析、一级缓存,Hibernate数据检索技术,Hibernate高级映射技术,Hibernate多表联合查询, Hibernate二级缓存技术,Hibernate分页技术,Hibernate性能优化技术。...

    精通 Hibernate:Java 对象持久化技术详解(第2版).part2

     18.5 查询性能优化  18.5.1 iterate()方法  18.5.2 查询缓存  18.6 小结  18.7 思考题 第19章 Hibernate高级配置  19.1 配置数据库连接池  19.1.1 使用默认的数据库连接池  19.1.2 使用配置文件指定的...

    07.拓薪教育-hibernate4.3环境搭建下

    主键生成策略使用,PO对象状态及状态的转换分析、一级缓存,Hibernate数据检索技术,Hibernate高级映射技术,Hibernate多表联合查询, Hibernate二级缓存技术,Hibernate分页技术,Hibernate性能优化技术。...

    02.拓薪教育-hibernate4.3-orm剖析.part2

    主键生成策略使用,PO对象状态及状态的转换分析、一级缓存,Hibernate数据检索技术,Hibernate高级映射技术,Hibernate多表联合查询, Hibernate二级缓存技术,Hibernate分页技术,Hibernate性能优化技术。...

    04.拓薪教育-hibernate4.3官方核心包介绍.part1

    主键生成策略使用,PO对象状态及状态的转换分析、一级缓存,Hibernate数据检索技术,Hibernate高级映射技术,Hibernate多表联合查询, Hibernate二级缓存技术,Hibernate分页技术,Hibernate性能优化技术。...

    04.拓薪教育-hibernate4.3官方核心包介绍.part2

    主键生成策略使用,PO对象状态及状态的转换分析、一级缓存,Hibernate数据检索技术,Hibernate高级映射技术,Hibernate多表联合查询, Hibernate二级缓存技术,Hibernate分页技术,Hibernate性能优化技术。...

Global site tag (gtag.js) - Google Analytics