前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Hibernate中使用memcached

Hibernate中使用memcached

作者头像
Hongten
发布2018-09-13 17:43:34
6150
发布2018-09-13 17:43:34
举报
文章被收录于专栏:Hongten

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

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2011-07-17 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档