`

Hibernater 一级缓存

阅读更多
Hibernater 一级缓存:



   Hibernate 一级缓存生命周期很短,和session什么周期一致。所以称事务级缓存。


   get() load() interate()均支持一级缓存,

注意:interate()只有在查询实体对象才支持,普通属性查询不支持。


session管理只能通过session.clear(), session.evict() 清除。


避免一次性导入大量数据,会每导入一条就在session中保留一条,最终引起内存溢出。
eg:
    for(int i =0; i<100000;i++){
         Object o = new Object();
        session.save(o);
     if(i % 100==0){
        session.flush();
        session.clear();
}
}
如上所示阶段性的清理一级session缓存,防止大量积压一级缓存而导致内存溢出
分享到:
评论

相关推荐

    JSP 开发之hibernate配置二级缓存的方法

    常用的缓存插件 Hibernater二级缓存是一个插件,下面是几种常用的缓存插件: EhCache:可作为进程范围的缓存,存放数据的物理介质可以是内存或硬盘,对Hibernate的查询缓存提供了支持。 OSCache:可作为进程范围的...

    Hibernater的jar包

    在使用Hibernate时,首先需要配置`hibernate.cfg.xml`文件,其中定义了数据库连接信息、方言、缓存策略等。接着,我们通过注解或者XML文件来映射Java实体类与数据库表,这就是所谓的对象关系映射。例如,一个`User`...

    hibernater3jar包全

    1. 使用二级缓存提高性能,例如Ehcache作为缓存提供者。 2. 合理设计实体关系,避免N+1查询问题。 3. 对于大数据量操作,考虑使用批处理或HQL的in语句。 4. 避免在业务逻辑中直接使用Session,而是通过Service层进行...

    Spirng-Structs-Hibernater框架所有要用的包

    它消除了传统的JDBC代码,提高了开发效率,同时支持复杂的对象关系映射和缓存机制。 整合SSH框架,开发者可以创建一个完整的、模块化的Web应用程序,其中Spring管理业务层和服务层,Struts处理用户交互,而...

    springMVC+Hibernater整合及测试(亲测可运行)所需jar包

    同时,Hibernate还支持二级缓存,事务管理,以及对象关系映射的高级特性,如懒加载、级联操作等。 在Spring MVC和Hibernate的整合中,通常会使用Spring的声明式事务管理,这样可以在Controller层无需显式管理事务,...

    HIBERNATER 学习笔记.doc

    - **缓存机制**:Hibernate 内置了一级缓存,并支持二级缓存插件,可以有效提高数据访问性能。 - **查询语言**:提供了 HQL 和 Criteria 查询接口,它们比原生 SQL 更易于编写和维护。 - **可移植性**:Hibernate ...

    spring+springmvc+hibernater框架架包

    Spring是一个全面的后端开发框架,它提供了依赖注入(DI)和面向切面编程(AOP)等核心特性。依赖注入帮助开发者解耦组件,使得代码更易于测试和维护。而AOP则允许在不修改原有代码的情况下,添加新的功能或进行日志...

    spring4mvc-hibernater4(全注释)

    5. **二级缓存**:提升性能,通过缓存策略减少对数据库的访问。 6. **注解配置**:替代XML配置,使得配置更简洁,更易于集成。 本资料包中的"demo"文件可能包含了基于Spring4 MVC和Hibernate4的示例项目,通过实际...

    hibernater 源代码

    Hibernate 支持第二级缓存和查询缓存,提高数据读取效率。`org.hibernate.cache.Cache`接口和其实现类如` EhCacheProvider`负责缓存管理。源代码分析这部分可以理解如何实现高效的缓存策略。 5. **持久化类和映射*...

    study_hibernater

    9. **缓存机制**:Hibernate有第一级缓存(Session缓存)和第二级缓存,可以提高性能,但需注意并发控制和数据一致性问题。 10. **事务管理**:在使用Hibernate进行数据库操作时,事务管理是必不可少的,通常使用...

    struts1+spring1+hibernater3写的新闻管理系统后台

    它提供了Session接口来处理数据库操作,包括查询、增删改查等,同时提供了二级缓存和缓存策略,提升了性能。 新闻管理系统的后台利用这三者的优势,可以实现以下功能: 1. **用户认证和授权**:Struts1的拦截器...

    hibernate_reference

    6. 第二级缓存和查询缓存:Hibernate的缓存机制可以提高性能,第一级缓存是Session级别的,而第二级缓存是SessionFactory级别的。此外,还可以启用查询缓存,将特定查询的结果存储起来,避免重复执行相同的查询。 7...

    SSH(struts2,Hibernate,Spring)整合及测试亲测可用所需jar包

    SSH是Java开发中的一种经典企业级应用框架,由Struts2、Hibernate和Spring三个开源框架组合而成。这个框架集合提供了模型-视图-控制器(MVC)架构模式,持久层管理,以及服务层的实现,使得开发高效且灵活。下面我们...

    spring3.0+hibernate3.3+mysql8.0

    这个组合是企业级应用中常见的技术选型,它们各自承担着不同的职责,共同构建了一个强大、灵活且可扩展的后端系统。下面将详细阐述这三个组件及其集成的关键知识点。 **Spring 3.0** 是一个全面的框架,用于简化...

    hibernate几种帮助文档

    它支持JPA(Java Persistence API),并提供了更高级的功能,如第二级缓存、查询语言HQL以及 Criteria 查询等。 **Hibernate注解** Hibernate注解是将元数据以注解形式嵌入到Java类和属性上,替代传统的XML配置...

    JSP 一个 成功软件

    在"JSP 一个 成功软件 Hibernater structs1.2"的项目中,可能的开发流程包括: 1. **页面设计**:使用JSP创建用户界面,将HTML元素与Java代码结合,以展示动态数据和执行服务器端操作。JSP的内置对象如`request`, `...

    music小站程序

    此外,Hibernate还提供了事务管理、缓存机制、查询语言HQL等高级特性,提高了开发效率和性能。 在"music小站程序"中,Struts可能用于处理用户的各种操作,如播放音乐、搜索歌曲、创建播放列表等。用户发送HTTP请求...

Global site tag (gtag.js) - Google Analytics