Hibernate中使用memcached

Hibernate-memcached是CacheProvider接口的memcached实现

http://code.google.com/p/hibernate-memcached/

步骤:

one:下载和安装运行memcache服务器程序 即:memcache.exe        下载到c:\      

two:增加Hibernate-memcached的相关类库

包括:memcached-2.1.jar  http://spymemcached.googlecode.com/files/memcached-2.1.jar

 spy-2.4.jar  http://bleu.west.spy.net/~dusin/repo/spy/jars/spy-2.4.jar

commons-codec-1.3.jar http://repol.maven.org/maven2/commons-doces/commons-dodec/1.3/commons-dodec-1.3.jar

three:修改hibernate.cfg.xml文件

four:测试Hibernate-memcached

Hibernate.java

代码:

<?xml version='1.0' encoding='UTF-8'?> <!DOCTYPE hibernate-configuration PUBLIC           "-//Hibernate/Hibernate Configuration DTD 3.0//EN"           "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">

 <!-- Generated by MyEclipse Hibernate Tools.                   --> <hibernate-configuration>

<session-factory>  <property name="dialect">   org.hibernate.dialect.MySQLDialect  </property>  <property name="connection.url">   jdbc:mysql://localhost:3307/users  </property>  <property name="connection.username">root</property>  <property name="connection.password">root</property>  <property name="connection.driver_class">   com.mysql.jdbc.Driver  </property>  <property name="myeclipse.connection.profile">mysqlusers</property>  <property name="show_sql">true</property>  <property name="format_sql">true</property>  <property name="current_session_context_class">thread</property> <property name="cache.provider_class">   com.googlecode.hibernate.memcached.MemcachedCacheProvider  </property>  <property name="ibernate.cache.use_query_cache">true</property>  <mapping resource="com/b510/examplex/Category.hbm.xml" />  <mapping resource="com/b510/examplex/Product.hbm.xml" />

</session-factory>

</hibernate-configuration>

HibernateTest.java

代码:

/**  *  */ package com.b510.examplex;

import java.util.List;

import org.hibernate.Query; import org.hibernate.Session;

/**  *  * @author XHW  *  * @date 2011-7-17  *  */ public class HibernateTest {  public static void main(String[] args) {   new HibernateTest().test();  }  public void test(){   Session session=HibernateSessionFactoryUtil.getSessionFactory().openSession();   session.beginTransaction();   Query query=session.createQuery("from Product");   //查询   query.setCacheable(true);   List<Product> list=query.list();   for(Product p:list){    System.out.println(p.getName());   }   Query query2=session.createQuery("from Product");   List<Product> list2=query.list();   for(Product p2:list2){    System.out.println(p2.getName());   }   session.getTransaction().commit();  } }

运行结果:

log4j:WARN No appenders could be found for logger (org.hibernate.cfg.Environment). log4j:WARN Please initialize the log4j system properly. 31 [main] INFO com.googlecode.hibernate.memcached.MemcachedCacheProvider - Starting MemcachedClient... 2011-07-17 22:15:34.015 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 2011-07-17 22:15:34.031 INFO net.spy.memcached.MemcachedConnection:  Connection state changed for sun.nio.ch.SelectionKeyImpl@17200b4 140 [main] INFO com.googlecode.hibernate.memcached.MemcachedCacheProvider - Building cache for region [com.b510.examplex.Category] 265 [main] INFO com.googlecode.hibernate.memcached.MemcachedCacheProvider - Building cache for region [com.b510.examplex.Category.products] Hibernate:     select         product0_.id as id1_,         product0_.category_id as category2_1_,         product0_.name as name1_,         product0_.price as price1_,         product0_.descripton as descripton1_     from         users.product product0_ java SE应用程序设计 java WEB开发与实战 Hibernate:     select         product0_.id as id1_,         product0_.category_id as category2_1_,         product0_.name as name1_,         product0_.price as price1_,         product0_.descripton as descripton1_     from         users.product product0_ java SE应用程序设计 java WEB开发与实战

注意:下面这步应该最先

 运行-->cmd-->cd\     回车-->memcached -vv         

显示结果:

Microsoft Windows XP [版本 5.1.2600] (C) 版权所有 1985-2001 Microsoft Corp.

C:\Documents and Settings\Administrator>ed\ 'ed\' 不是内部或外部命令,也不是可运行的程序 或批处理文件。

C:\Documents and Settings\Administrator>cd\

C:\>memcached -vv slab class   1: chunk size     80 perslab 13107 slab class   2: chunk size    100 perslab 10485 slab class   3: chunk size    128 perslab  8192 slab class   4: chunk size    160 perslab  6553 slab class   5: chunk size    200 perslab  5242 slab class   6: chunk size    252 perslab  4161 slab class   7: chunk size    316 perslab  3318 slab class   8: chunk size    396 perslab  2647 slab class   9: chunk size    496 perslab  2114 slab class  10: chunk size    620 perslab  1691 slab class  11: chunk size    776 perslab  1351 slab class  12: chunk size    972 perslab  1078 slab class  13: chunk size   1216 perslab   862 slab class  14: chunk size   1520 perslab   689 slab class  15: chunk size   1900 perslab   551 slab class  16: chunk size   2376 perslab   441 slab class  17: chunk size   2972 perslab   352 slab class  18: chunk size   3716 perslab   282 slab class  19: chunk size   4648 perslab   225 slab class  20: chunk size   5812 perslab   180 slab class  21: chunk size   7268 perslab   144 slab class  22: chunk size   9088 perslab   115 slab class  23: chunk size  11360 perslab    92 slab class  24: chunk size  14200 perslab    73 slab class  25: chunk size  17752 perslab    59 slab class  26: chunk size  22192 perslab    47 slab class  27: chunk size  27740 perslab    37 slab class  28: chunk size  34676 perslab    30 slab class  29: chunk size  43348 perslab    24 slab class  30: chunk size  54188 perslab    19 slab class  31: chunk size  67736 perslab    15 slab class  32: chunk size  84672 perslab    12 slab class  33: chunk size 105840 perslab     9 slab class  34: chunk size 132300 perslab     7 slab class  35: chunk size 165376 perslab     6 slab class  36: chunk size 206720 perslab     5 slab class  37: chunk size 258400 perslab     4 slab class  38: chunk size 323000 perslab     3 slab class  39: chunk size 403752 perslab     2 slab class  40: chunk size 504692 perslab     2 <1944 server listening <1928 new client connection <1920 new client connection <1908 new client connection <1896 new client connection

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏24K纯开源

CMake结合Visual Studio中开发Qt应用程序注意事项

4212
来自专栏哎_小羊

初试 Centos7 上 Ceph 存储集群搭建

目录 Ceph 介绍 环境、软件准备 Ceph 预检 Ceph 存储集群搭建 1、Ceph 介绍 Ceph 是一个开源的分布式存储系统,包括对象存储、块设备...

1.4K6
来自专栏一个会写诗的程序员的博客

8.1 Spring Boot集成Groovy混合Java开发小结

本章节我们使用SpringBoot集成Groovy混合Java开发一个极简的RestAPI。 数据库使用mysql,ORM层使用mybatis,模板引擎使用fr...

1902
来自专栏颇忒脱的技术博客

Spring、Spring Boot和TestNG测试指南 - 使用Spring Boot Testing工具

前面一个部分讲解了如何使用Spring Testing工具来测试Spring项目,现在我们讲解如何使用Spring Boot Testing工具来测试Sprin...

1733
来自专栏程序猿DD

Why Spring Boot

本文介绍将各种Spring的配置方式,帮助您了解配置Spring应用的复杂性。 Spring是一个非常受欢迎的Java框架,它用于构建web和企业应用。不像许多...

4277
来自专栏一个默默无闻的工程师的日常

rabbitmq无法重新加入集群,启动失败的问题

3121
来自专栏about云

让你快速认识flume及安装和使用flume1.5传输数据(日志)到hadoop2.2

问题导读: 1.什么是flume? 2.如何安装flume? 3.flume的配置文件与其它软件有什么不同? 一、认识flume 1.flume是什么? ...

38713
来自专栏一个会写诗的程序员的博客

Spring Boot 自定义Spring MVC 配置: WebMvcConfigurationSupport

Spring Boot 自定义Spring MVC 配置: WebMvcConfigurationSupport

1292
来自专栏琦小虾的Binary

CMake学习笔记(三)——以笔者的Robosub竞赛为例

CMake学习笔记(三)——以笔者的Robosub竞赛为例 继笔者认真学习了CMake语法之后,便开始尝试自己用CMake将以前用Qt写的软件框架程序改编为CM...

35410
来自专栏好好学习吧

Python定时偷取妹子Chrome上网记录

2、使用DB Browser把这个文件加进来,打开后可以看到表信息,这里用到的urls表中的url和last_visit_time字段

3034

扫码关注云+社区

领取腾讯云代金券