memcache与spring集成

一、前期准备

1)  下载memcached服务端memcached-1.2.6-win32-bin.zip,地址:http://code.jellycan.com/memcached/

2)  下载java版客户端 java_memcached-release_2.6.1.zip
3)  解压缩memcached-1.2.6-win32-bin.zip到指定目录,例如:D:\memcached-1.2.6-win32 ,在终端(即cmd命令行界面)
D:\memcached-1.2.6-win32\memcached.exe -d install  
D:\memcached\memcached.exe -d start  
这样memcache就会作为windows系统服务在每次开机时启动memcache服务。
-p 监听的端口   
-l 连接的IP地址, 默认是本机   
-d start 启动memcached服务   
-d restart 重起memcached服务   
-d stop|shutdown 关闭正在运行的memcached服务   
-d install 安装memcached服务   
-d uninstall 卸载memcached服务   
-u 以的身份运行 (仅在以root运行的时候有效)   
-m 最大内存使用,单位MB。默认64MB   
-M 内存耗尽时返回错误,而不是删除项   
-c 最大同时连接数,默认是1024   
-f 块大小增长因子,默认是1.25   
-n 最小分配空间,key+value+flags默认是48   
-h 显示帮助   
二、实例代码
spring-memcache.xml  配置pool和memcache客户端
<?xml version="1.0" encoding="UTF-8"?>  
  
<beans xmlns="http://www.springframework.org/schema/beans"  
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
    xmlns:context="http://www.springframework.org/schema/context"  
    xmlns:aop="http://www.springframework.org/schema/aop"  
    xmlns:tx="http://www.springframework.org/schema/tx"  
    xsi:schemaLocation="http://www.springframework.org/schema/beans  
    http://www.springframework.org/schema/beans/spring-beans-2.5.xsd  
    http://www.springframework.org/schema/context  
    http://www.springframework.org/schema/context/spring-context-2.5.xsd  
    http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.5.xsd  
    http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.5.xsd">  
  
    <bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">  
        <property name="locations">  
            <list>  
                <value>classpath:properties/memcache.properties</value>  
            </list>  
        </property>  
    </bean>  
  
    <bean id="memcachedPool" class="com.danga.MemCached.SockIOPool"  
        factory-method="getInstance" init-method="initialize"  
        destroy-method="shutDown">  
  
        <constructor-arg>  
            <value>memCachedPool</value>  
        </constructor-arg>  
          
        <property name="servers">  
            <list>  
                <value>${memcache.server}</value>  
            </list>  
        </property>  
          
        <property name="initConn">  
            <value>${memcache.initConn}</value>  
        </property>  
          
        <property name="minConn">  
            <value>${memcache.minConn}</value>  
        </property>  
  
        <property name="maxConn">  
            <value>${memcache.maxConn}</value>  
        </property>  
  
        <property name="maintSleep">  
            <value>${memcache.maintSleep}</value>  
        </property>  
  
        <property name="nagle">  
            <value>${memcache.nagle}</value>  
        </property>  
  
        <property name="socketTO">  
            <value>${memcache.socketTO}</value>  
        </property>  
    </bean>  
  
    <bean id="memCachedClient" class="com.danga.MemCached.MemCachedClient">  
        <constructor-arg>  
            <value>memCachedPool</value>  
        </constructor-arg>  
    </bean>  
  
</beans> 
memcache.properties memcache的连接属性 这是本机做服务器的,如果是其它机器,换ip 端口即可
memcache.server=127.0.0.1:11211  
memcache.initConn=20  
memcache.minConn=10  
memcache.maxConn=50  
memcache.maintSleep=3000  
memcache.nagle=false  
memcache.socketTO=3000   
TestMemcache. Java 测试 类   用的是junit4
package com.pis.memcache;  
  
import org.junit.Before;  
import org.junit.Test;  
import org.springframework.context.ApplicationContext;  
import org.springframework.context.support.ClassPathXmlApplicationContext;  
  
import com.danga.MemCached.MemCachedClient;  
  
public class TestMemcache {  
    MemCachedClient memCachedClient;  
    @Before  
    public void beforeTest(){  
          
        ApplicationContext atx = new ClassPathXmlApplicationContext("/spring/spring-memcache.xml");  
        memCachedClient = (MemCachedClient)atx.getBean("memCachedClient");  
    }  
      
    @Test  
    public void TestMem(){  
        memCachedClient.set("name", "han");  
          
        System.out.println(memCachedClient.get("name"));  
    }  

}  



  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值