`
wjboy49
  • 浏览: 284610 次
  • 性别: Icon_minigender_1
  • 来自: 湖南岳阳
社区版块
存档分类
最新评论

Hibernate Memcached 配置

    博客分类:
  • java
阅读更多

官方网址: http://code.google.com/p/hibernate-memcached/
目前最新版本为1.0, 支持Hibernate3.3.

下面是具体的使用方法:
hibernate-memcached需要支持的类库如下:


配置方法如下:

配置Hibernate使用cache提供类

hibernate.cache.provider_class com.googlecode.hibernate.memcached.MemcachedCacheProvider

 

设置查询缓存开启

hibernate.cache.use_query_cache true


其它一些参数设置说明:

Property Default Description
hibernate.memcached.servers localhost:11211 memcached 服务地址,多个用空格分隔
格式host:port
hibernate.memcached.cacheTimeSeconds 300 缓存失效时间,单位秒
hibernate.memcached.keyStrategy HashCodeKeyStrategy 缓存Key生成存储HashCode算法
hibernate.memcached.readBufferSize DefaultConnectionFactory.DEFAULT_READ_BUFFER_SIZE 从服务器读取数据缓存区大小
hibernate.memcached.operationQueueLength DefaultConnectionFactory.DEFAULT_OP_QUEUE_LEN Maximum length of the operation queue returned by this connection factory
hibernate.memcached.operationTimeout DefaultConnectionFactory.DEFAULT_OPERATION_TIMEOUT 操作超时时间设置
hibernate.memcached.hashAlgorithm HashAlgorithm.KETAMA_HASH 新增缓存数据到服务器时使用的Hash散列算法。 当 hibernate-memcached 设置成 KETAMA_HASH算法时,注意:默认客户端API使用的是 HashAlgorithm.NATIVE_HASH
hibernate.memcached.clearSupported false 支持MemcachedCache.clear()方法清空缓存。
建议不要开启。


配置示例(本文以Hibernate3.3-entitymanager为例)
配置 persistence.xml文件

<? xml version="1.0" encoding="UTF-8" ?>
< persistence xmlns ="http://java.sun.com/xml/ns/persistence" " target ="_new" > http://java.sun.com/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd" version="1.0">

< persistence-unit name ="entityManager" transaction-type ="RESOURCE_LOCAL" >
< provider > org.hibernate.ejb.HibernatePersistence </ provider >
< jta-data-source > java:comp/env/jdbc/qualitydb </ jta-data-source >

< properties >
< property name ="hibernate.dialect" value ="org.hibernate.dialect.PostgreSQLDialect" />
< property name ="hibernate.max_fetch_depth" value ="3" />
< property name ="hibernate.show_sql" value ="true" />


< property name ="hibernate.cache.region_prefix" value ="quality.cache.ehcache" />
< property name ="hibernate.cache.use_second_level_cache" value ="true" />
< property name ="hibernate.cache.use_structured_entries" value ="true" />
< property name ="hibernate.cache.use_query_cache" value ="true" />
< property name ="hibernate.cache.provider_class" value ="com.googlecode.hibernate.memcached.MemcachedCacheProvider" />
< property name ="hibernate.memcached.servers" value ="localhost:11211" />

</ properties >

</ persistence-unit >

</ persistence >



启动后,提示如下:
2008-08-28 17:10:08,312 JCLLoggerAdapter.java265 INFO -- Starting MemcachedClient...
2008-08-28 17:10:08.718 INFO net.spy.memcached.MemcachedConnection: Added {QA sa=localhost/127.0.0.1:11211, #Rops=0, #Wops=0, #iq=0, topRop=null, topWop=null, toWrite=0, interested=0} to connect queue
2008-08-28 17:10:08.750 INFO net.spy.memcached.MemcachedConnection: Connection state changed for sun.nio.ch.SelectionKeyImpl@16e59da

表示我们第一步配置已经成功了,接下来,对需要进行缓存的Entity进行配置

1 @Entity
2 @Cache(usage = CacheConcurrencyStrategy.READ_WRITE) // 设置要求缓存
3 public class Student {
4
5    @Id
6    @Column(length = 32 )
7      private String id;
8     
9      @Column(length = 20 )
10      private string name;
11     
12      @OneToMany
13      @Cache(usage = CacheConcurrencyStrategy.READ_WRITE)
14      private Set < Book > books;
15
16 }



Ok,现在配置已经完成。

分享到:
评论

相关推荐

    hibernate-memcached包

    在实际使用hibernate-memcached时,开发者需要配置Hibernate的缓存设置,指定使用Memcached作为二级缓存。这通常涉及修改Hibernate的配置文件,添加相关的provider和cache regions。同时,还需要在应用环境中部署并...

    memcache也spring,hibernate的配置

    标题中的“memcache也spring,hibernate的配置”指的是如何在Java开发环境中,结合Memcached缓存系统、Spring框架和Hibernate持久化框架进行集成配置。Memcached是一种高性能的分布式内存对象缓存系统,用于加速动态...

    hibernate-memcached-1.1.0-sources.zip

    在整合过程中,我们首先需要在Hibernate配置文件中添加Memcached缓存插件的配置,包括Memcached服务器的地址、端口以及缓存策略等信息。接着,我们需要在实体类或者会话工厂中指定使用Memcached作为二级缓存。在代码...

    hibernate整合memcached需要的jar包

    2. **配置Hibernate**:在Hibernate的配置文件(通常是`hibernate.cfg.xml`)中,设置`cache.provider_class`属性为`net.sf.hibernate.cache.MemcachedCacheProvider`,并配置Memcached服务器的地址和端口。...

    hibernate集成memcached所需jar

    memcached-2.5-sources.jar、hibernate-memcached-1.2.2-sources.jar、spy-2.4.jar这三个jar不太好找,剩下两个commons-codec和slf4j-log4j直接maven配置一下就行 &lt;groupId&gt;org.slf4j &lt;artifactId&gt;slf4j-log4j12 ...

    hibernate-memcached-1.1.0-javadoc.zip

    接着,在Hibernate的配置文件(如hibernate.cfg.xml)中指定使用Memcached作为缓存提供者,并设置相关参数,如服务器地址、端口、缓存策略等。 3. 使用流程: - 缓存初始化:在应用启动时,Hibernate Memcached会...

    项目中使用 hibernate-memcached 做二级缓存

    2. **配置Hibernate**:在Hibernate的配置文件(如hibernate.cfg.xml)中,启用二级缓存并指定使用Hibernate-Memcached作为缓存提供者。 3. **配置Memcached服务器**:设置连接到Memcached服务器的参数,包括主机...

    最新二级缓存memcached,支持hibernate4

    解决目前memcached不支持hibernate4的缺陷,hibernate配置&lt;property name="hibernate.cache.region.factory_class"&gt;com.googlecode.hibernate.memcached.MemcachedRegionFactory&lt;/property&gt;

    hibernate4+spring4+memcached 工程

    3. **配置文件**:如`hibernate.cfg.xml`和`spring-context.xml`,分别配置Hibernate和Spring的设置,包括数据库连接、实体映射和Memcached的配置。 4. **Memcached客户端库**:可能有第三方库如spymemcached,用于...

    memcached整合hibernate资源合集

    2. **配置Hibernate缓存**:在Hibernate的配置文件中,你需要指定使用Memcached作为二级缓存提供者。这可能涉及修改`hibernate.cache.region.factory_class`属性,设置为对应的Memcached缓存区域工厂类。 3. **集成...

    memcached作为hibernate二级缓存必备的jar包

    总之,将Memcached集成到Hibernate作为二级缓存,能够显著提升系统性能,但同时也需要合理配置和管理,以确保系统的可靠性和数据的一致性。通过上述jar包,开发者可以轻松地将这两者结合,为Java应用带来更高的效率...

    memcached在SSH中的配置

    - 创建一个Memcached配置类,声明一个`MemcachedClient` bean,并配置服务器地址、池大小等参数。 - 配置Spring的缓存抽象,将memcached作为缓存 provider,例如: ```xml ``` - 将`...

    Spring4+SpringMVC+mysql+memcached【同时支持mybatis+hibernate两种底层操作框架】

    在构建Web应用程序时,"Spring4+SpringMVC+mysql+memcached【同时支持mybatis+hibernate两种底层操作框架】"是一个常见的技术栈,它涵盖了多个关键组件,为高效、灵活的开发提供了坚实的基础。以下是这个技术组合中...

    memcached-2.1.jar

    2. 连接配置:配置Memcached服务器的IP地址和端口号,创建客户端连接。 3. 操作缓存:使用Java API进行增删查改操作,如`set(key, expireTime, value)`用于设置缓存,`get(key)`用于获取缓存,`delete(key)`用于删除...

    hibernate配置二三级缓存

    ### Hibernate配置二级与三级缓存详解 在Java开发领域中,Hibernate作为一种流行的ORM(对象关系映射)框架,被广泛应用于数据库操作。为了提高应用程序的性能,Hibernate支持多种级别的缓存机制,其中最为常见的是...

    memcached套装

    3. **memcached配置**:包括设置监听端口、最大内存大小、超时时间、缓存策略等,可以通过修改配置文件来完成。 4. **Hibernate4**:这是一个Java持久化框架,允许开发人员用面向对象的方式操作数据库,简化了数据库...

    hibernate4.0使用二级缓存jar包

    ehcache 二级缓存 配置使用的jar包 配置如下: &lt;!-- 启用二级缓存 --&gt; &lt;property name="hibernate.cache.use_second_level_cache"&gt;true &lt;!-- 查询的二级缓存配置 --&gt; &lt;property name="hibernate....

    配置memecached作hibernate4的二级缓存

    本篇将详细讲解如何配置Memcached作为Hibernate 4的二级缓存,以及相关的知识点。 首先,我们需要了解什么是Memcached。Memcached是一款高性能、分布式内存对象缓存系统,它用于存储中间结果或临时数据,以减少对...

    hibernte4集成memcahce

    Hibernate4集成memcache用jar合集 hibernate配置 &lt;property name="hibernate.cache.region.factory_class"&gt;com.googlecode.hibernate.memcached.MemcachedRegionFactory&lt;/property&gt;

Global site tag (gtag.js) - Google Analytics