`
ssy8110
  • 浏览: 15148 次
  • 来自: ...
文章分类
社区版块
存档分类
最新评论

Spring+Hibernate 缓存不起作用

阅读更多

最近做的两个项目其中一个需求测试一下缓存机制下的运行效率,结果配了半天,老是不起作用,而另一套同样机制下的应用,确起作用查了两个系统的配置也一样,下面是我ehcache.xml 文件的信息

<?xml version="1.0" encoding="UTF-8"?>
<ehcache>
	<diskStore path="java.io.tmpdir" />
	<defaultCache maxElementsInMemory="999999999" eternal="true"
		timeToIdleSeconds="10000" timeToLiveSeconds="10000"
		overflowToDisk="true" />
</ehcache>

 下面是部份applicationContext.xml

<bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
        <property name="dataSource" ref ="gzMobileSource" />
        <property name="lobHandler" ref ="oracleLobHandler" />
        <property name="mappingDirectoryLocations">
            <list>
                <value>classpath:/com/kmi/expert/model</value>
            </list>
        </property>
        <property name="hibernateProperties">
            <props>
                <prop key="hibernate.dialect">${hibernate.dialect}</prop>
                <prop key="hibernate.show_sql">${hibernate.show_sql}</prop>
                <prop key="hibernate.max_fetch_depth">0</prop>
                <prop key="hibernate.generate_statistics">true</prop>
                <prop key="hibernate.cache.use_query_cache">true</prop>
                <prop key="hibernate.cache.use_second_level_cache">true</prop>
                <prop key="cglib.use_reflection_optimizer">false</prop> 
                <prop key="hibernate.cache.provider_class">org.hibernate.cache.HashtableCacheProvider</prop>
                <prop key="hibernate.query.factory_class">org.hibernate.hql.ast.ASTQueryTranslatorFactory</prop>
            </props>
        </property>
    </bean>

ehcache.xml文件放置在src目录中,编译后输出在WEB-INF/classes/下面。持久类的映射如下

<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC
"-//Hibernate/Hibernate Mapping DTD//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd" >
<hibernate-mapping package="com.kmi.expert.model">
    <class name="Displaytype" table="DISPLAYTYPE">
        <cache usage="read-only"/>        
        <id name="id" type="integer" column="DISPLAYTYPEID">
            <generator class="org.hibernate.id.Assigned" />
        </id>
      中间部份略...
 </class>
</hibernate-mapping>
 

 

 

 

我对缓存是否起作用的判断是,通过执行相同的操作,检查输出的SQL,发现每次执行都输出了相同的SQL,条数也一样。不知道那位达人能指点一二。

 

 

分享到:
评论
4 楼 ssy8110 2008-03-24  
大部份都是Query,很少有Load方式。
3 楼 魔力猫咪 2008-03-21  
那么你使用什么方法获得实体对象的。Hibernate的二级缓存主要是对load方法起作用。如果配置了Query缓存,那么对使用同一条件的HQL查询语句也可以起作用。你是用什么方式查询对象的?
2 楼 ssy8110 2008-03-21  
问题补充齐了
1 楼 魔力猫咪 2008-03-21  
你是否在持久化实体的映射文件里配置缓存策略?你是如何获得实体的?是通过id Load还是通过hql查询?hql查询的时候你没有使用query缓存吧?

相关推荐

    springmvc+spring+hibernate

    Spring MVC、Spring 和 Hibernate 是Java Web开发中的三大主流框架,它们各司其职,共同构建了一个强大而灵活的后端架构。Spring MVC 负责处理HTTP请求并将其路由到相应的控制器,Spring 提供了依赖注入(DI)和面向...

    gwt+spring+hibernate

    标题 "gwt+spring+hibernate" 涉及的是一个使用Google Web Toolkit (GWT)、Spring框架和Hibernate ORM技术的集成示例。这是一个常见的Web应用开发组合,用于构建高效、可扩展且功能丰富的Java web应用程序。下面将...

    spring mvc + spring + hibernate 全注解整合开发视频教程 11

    在本教程中,我们将深入探讨如何使用Spring MVC、Spring和Hibernate三大框架进行全注解的整合开发。这个视频教程系列的第11部分,重点可能是建立在前几部分的基础之上,进一步深化对这三个核心技术的理解和实践。 ...

    spring mvc + spring + hibernate 全注解整合开发视频教程 04

    在本视频教程“Spring MVC + Spring + Hibernate 全注解整合开发视频教程 04”中,我们将深入探讨Java企业级开发中的三大核心技术——Spring、Spring MVC和Hibernate的集成与应用,尤其是通过注解实现的简化配置。...

    struts2+spring+hibernate框架购物车

    Struts2、Spring和Hibernate是Java企业级应用开发中非常流行的三大开源框架,它们各司其职,共同构建了一个强大的MVC(Model-View-Controller)架构。在"struts2+spring+hibernate框架购物车"项目中,这三个框架协同...

    Spring+Hibernate+Struts资源共享系统

    通过 Hibernate,开发者可以轻松地进行数据的增删改查操作,同时支持事务管理和缓存策略,提高了系统的性能和数据一致性。 **Struts 框架** Struts 是基于MVC设计模式的Web应用框架,主要处理前端请求和后端服务...

    超市管理信息系统(SSH struts+spring+hibernate)

    【标题】"超市管理信息系统(SSH struts+spring+hibernate)"是一个综合性的IT项目,它基于流行的Java企业级开发框架SSH(Struts、Spring、Hibernate)来构建。SSH框架是许多大型企业级应用的首选,因为它提供了一个...

    ZK+spring+hibernate的整合

    ZK、Spring和Hibernate是Java开发中的三大重要框架,它们分别在用户界面、依赖注入与事务管理、持久层操作方面发挥着关键作用。将这三者进行整合,可以构建出高效、稳定且易于维护的企业级应用。以下是对这三者整合...

    springmvc+spring+hibernate环境

    在"springmvc+spring+hibernate环境"中,配置文件通常会包括Spring的配置文件(如applicationContext.xml)、Spring MVC的配置文件(如spring-mvc.xml)、Hibernate的配置文件(如hibernate.cfg.xml)以及缓存的配置...

    Webwork+spring+hibernate集成实例

    Webwork、Spring和Hibernate是Java开发中的三大框架,它们各自在不同的层面上为应用程序提供服务。Webwork负责处理用户交互,Spring提供依赖注入和管理事务,而Hibernate则专注于对象关系映射(ORM),使得数据库...

    Struts2+Spring+Hibernate+Ehcache+AJAX+JQuery+Oracle 框架集成用户登录注册Demo工程

    6.Hibernate继承 HibernateDaoSupport。 7.Spring+Junit4单元测试,优点:不会破坏数据库现场,等等。 2)Demo 导入说明: 1.Eclipse Encoding:GBK 2.Eclipse 导入后可能需要在 Xml Catalog 手动添加:ehcache-...

    SSH(Struts+Spring+Hibernate)结合项目简单实例

    SSH(Struts+Spring+Hibernate)是Java Web开发中一种常见的技术栈,它将MVC设计模式、依赖注入和持久层框架集成为一个整体,大大提高了开发效率和代码的可维护性。下面我们将深入探讨SSH框架的各个组成部分及其结合...

    spring+hibernate框架demo

    5. **缓存机制**:Hibernate 支持一级缓存(Session 缓存)和二级缓存(SessionFactory 缓存),提高数据访问效率。 在"spring+hibernate框架demo"中,可能包含以下内容: 1. `.classpath`:Eclipse 或其他 IDE 的...

    dwr+spring+hibernate模板.zip

    在IT领域,DWR(Direct Web Remoting)、Spring和Hibernate是三个至关重要的技术组件,它们分别在Web应用程序的远程调用、依赖注入和对象关系映射方面发挥着核心作用。将这三个框架整合在一起,可以构建出高效、灵活...

    基于Struts2+Spring+Hibernate+MySql的注册登录系统.zip

    Struts2、Spring、Hibernate和MySql这四个技术是Java Web开发中常用的一套经典组合,被称为SSH框架。这个注册登录系统就是利用这些技术构建的。下面将详细讲解这套组合的相关知识点。 首先,Struts2是一个强大的MVC...

    Spring+Struts2+hibernate+Redis整合

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

    Spring+Hibernate+SpringMVC+Maven整合

    本项目"Spring+Hibernate+SpringMVC+Maven整合"集中了四个流行的Java技术,旨在提供一个全面的后端开发解决方案。以下是这些技术及其整合的关键知识点: 1. **Spring框架**:Spring是一个开源的Java平台,它为开发...

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

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

    struts1+spring+hibernate所需jar包

    Struts1、Spring和Hibernate是Java Web开发中的三个重要框架,它们各自负责应用程序的不同层面:Struts1专注于表现层管理,Spring提供了强大的依赖注入和事务管理功能,而Hibernate则是持久层解决方案,简化了数据库...

Global site tag (gtag.js) - Google Analytics