`

spring hibernate struts 整合开发(5) - Hibernate二级缓存

阅读更多
一. spring hibernate struts 整合开发(1) - 搭建环境
二. spring hibernate struts 整合开发(2) - Spring集成的Hibernate编码和测试
三. spring hibernate struts 整合开发(3) - Struts集成Spring
四. spring hibernate struts 整合开发(4) - Struts与Spring集成2
五. spring hibernate struts 整合开发(5) - Hibernate二级缓存
六. spring hibernate struts 整合开发(6) - 额外功能



1. 启用Hibernate二级缓存

在beans.xml的sessionFactory节点中,加入:

<bean id="sessionFactory" ...>
  ...
  hibernate.cache.use_second_level_cache=true
  hibernate.cache.use_query_cache=false
  hibernate.cache.provider_class=org.hibernate.cache.EhCacheProvider
</bean>


2. EhCache配置文件

在类路径下新建Ehcache配置文件ehcache.xml

<ehcache>
    <diskStore path="java.io.tmpdir"/>
    <defaultCache maxElementsInMemory="1000" eternal="false" overflowToDisk="true"
            timeToIdleSeconds="120"
            timeToLiveSeconds="180"
            diskPersistent="false"
            diskExpiryThreadIntervalSeconds="60"/>
	<cache name="com.john.bean.Person" maxElementsInMemory="100" eternal="false"
		overflowToDisk="true" timeToIdleSeconds="300" timeToLiveSeconds="600" diskPersistent="false"/>
</ehcache>


3. 映射文件缓存支持

在Person.hbm.xml中加入:

<class name="Person" ...>
  <cache usage="read-write" region="com.john.bean.Person"/>
</class>


4. 测试缓存

修改测试类personServiceTest的testGetPerson()方法:

	Person person = personService.getPerson(2);
	System.out.println(person.getName());
	Thread.sleep(10000);
	Person person = personService.getPerson(2);
	System.out.println(person.getName());


在线程睡眠的时候,关掉数据库,测试是否还能拿到数据。

Note:
a. 如果ehcache版本在1.41以上,必须添加backport-util-concurrent.jar包,否则会报NoClassDefFoundError异常

b. 测试缓存时,PersonServiceBean的getPerson方法必须是不支持事务的,否则还是会连接数据库

整理自:传智播客spring教程
分享到:
评论

相关推荐

    struts2.0 spring2.0 hibernate3.0整合开发快速入门-3

    ### Struts2.0、Spring2.0与Hibernate3.0整合开发快速入门知识点解析 #### 一、Struts2.0与Hibernate3.0整合基础 **知识点1:Struts2.0简介** - **定义**: Struts2是Apache基金会下的一个开源项目,它是一个基于...

    spring hibernate struts整合

    在Java企业级开发中,Spring、Hibernate和Struts是三个非常重要的框架,它们分别负责不同层面的任务:Spring作为全面的轻量级应用框架,管理着应用程序的依赖注入和AOP(面向切面编程);Hibernate则是一个强大的ORM...

    Spring+Struts2+hibernate+Redis整合

    在IT行业中,SSH(Spring、Struts2、Hibernate)是一个经典的Java Web开发框架组合,而Redis则是一个高性能的键值存储系统,常用于缓存和数据持久化。将SSH与Redis整合,可以提升应用程序的性能和响应速度。下面将...

    Hibernate、Spring和Struts工作原理及使用理由

    【标题】:“Hibernate、Spring和Struts工作原理及使用理由” 【内容】: Hibernate是一个流行的Java持久化框架,它的核心工作原理主要包括以下步骤: 1. **读取并解析配置文件**:Hibernate通过读取hibernate....

    SSH整合jar包-spring5.0+hibernate5.1+struts2.5

    SSH整合是指将Spring、Hibernate和Struts这三大Java开源框架集成在一起,用于构建高效、灵活的企业级Web应用程序。这三个框架分别负责不同的职责:Spring作为应用的基石,提供依赖注入(DI)和面向切面编程(AOP),...

    ssh框架整合详细步骤(spring+struts2+hibernate)

    ### SSH框架整合详细步骤(spring+struts2+hibernate) #### 一、整合概述 在现代Web应用开发中,SSH(Struts2、Spring、Hibernate)框架因其各自独特的功能和优势,常被组合使用以构建高效、稳定且易于维护的系统...

    Struts2_Spring_Hibernate整合开发实例

    例如,选择合适的Struts2拦截器来提高性能,使用Spring的AOP进行日志记录,或者利用Hibernate的二级缓存提升数据库操作速度。此外,安全方面也不容忽视,如防止SQL注入、XSS攻击等。 总的来说,"Struts2_Spring_...

    JavaWeb整合开发实战--基于Struts2+Hibernate+Spring(pdf已分割)

    Struts2、Hibernate和Spring是Java开发领域中非常重要的开源框架,它们各自解决了Web应用中的不同问题,而将它们整合在一起可以构建出高效、可维护的大型企业级应用。 Struts2是一个MVC(Model-View-Controller)...

    JavaEE企业应用实战-Struts2+Spring3+Hibernate整合开发(第3版)

    ### JavaEE企业应用实战-Struts2+Spring3+Hibernate整合开发(第3版)核心知识点解析 #### 一、JavaEE概述与架构 - **JavaEE简介**:JavaEE(Java Platform, Enterprise Edition)是Java平台的企业版,提供了一套...

    JavavEE轻量级框架Struts2+Hibernate+Spring整合开发

    JavaEE轻量级框架Struts2、Hibernate和Spring的整合开发是现代企业级应用开发中的常见模式,这种组合被称为SSH(Struts2、Spring、Hibernate)框架。这三种技术分别承担了不同职责,共同构建了一个高效、灵活且可...

    [轻量级Java_EE企业应用实战_Struts2_Spring3_Hibernate整合开发

    【轻量级Java_EE企业应用实战_Struts2_Spring3_Hibernate整合开发】这个主题主要涉及的是Java EE领域中的三大框架——Struts2、Spring3和Hibernate的集成应用,这是构建现代Java后端系统的一种常见方式。这些框架...

    struts2+hibernate+spring整合开发jar包

    Struts2、Hibernate和Spring是Java开发中广泛使用的三大轻量级框架,它们各自负责不同的领域,协同工作可以实现高效、灵活的企业级应用开发。Struts2作为MVC(Model-View-Controller)架构的实现,主要处理前端展示...

    Spring+Struts2+Hibernate整合JAR包

    Spring、Struts2和Hibernate是Java Web开发中的三大框架,它们各自负责应用程序的不同层面:Spring作为全面的轻量级框架,提供了依赖注入、AOP(面向切面编程)、MVC(模型-视图-控制器)等核心功能;Struts2是经典...

    开发基于Struts Spring Hibernate Ajax的网上信息发布平台(Struts Hibernate Spring Ajax)--上机贯穿案例

    总之,这个项目旨在帮助开发者全面理解并掌握Struts、Spring、Hibernate和Ajax的整合应用,为开发复杂的企业级Web应用程序打下坚实基础。通过实际操作,开发者将深化对这些技术的理解,提高开发效率,同时也能积累...

    struts-spring-hibernate-_-integration

    Struts、Spring 和 Hibernate 是Java Web开发中的三大框架,它们各自负责不同的职责,组合使用能够构建出高效、灵活的企业级应用程序。Struts 是一个MVC(Model-View-Controller)框架,Spring 提供了全面的架构支持...

    Struts2-hibernate--Spring-0100-page.zip_page

    Struts2、Hibernate和Spring是Java Web开发中的三大框架,它们各自在应用程序的不同层面发挥着重要作用。Struts2是一个强大的MVC(Model-View-Controller)框架,负责处理用户请求和展示视图;Hibernate是一个对象...

    Struts2+Spring2.5+Hibernate3.3整合开发附源代码

    Struts2、Spring和Hibernate是Java Web开发中的三大框架,它们的整合应用极大地提升了开发效率和项目的可维护性。这个项目结合了Struts2作为MVC框架,Spring作为依赖注入和事务管理工具,以及Hibernate作为ORM(对象...

    Spring HibernateStruts开发案例

    当Spring、Hibernate和Struts整合在一起时,可以构建出强大的企业级应用架构。Spring作为整体的框架管理者,负责对象的管理和事务控制;Hibernate则处理数据持久化,简化数据库操作;而Struts则作为前端控制器,协调...

Global site tag (gtag.js) - Google Analytics