Memcached对象缓存实现重点

Memcached中我们常常需要自定义一些数据,所以,单纯的Key-Value的格式无法完成需求,所以我们需要把这个value部分 对象化,而memcache里面要 存储对象并非传统,它需要用工具序列化才行,如下列代码:

 

import java.io.Serializable;

public class TBean implements Serializable {
	
	private static final long serialVersionUID = 1945562032261336919L;

	private String name;

	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}
}

     对基本的数据我们可以操作,对于普通的POJO而言,如果要进行存储的话,那么比如让其实现java.io.Serializable接口,因为memcached是一个分布式的缓存服务器,多台服务器间进行数据共享需要将对象序列化的,所以必须实现该接口,否则会报错的。比如我们写一个简单的测试Bean如下:

 

 

   测试用例:

   public class TestMemcached extends TestCase {


	private static MemCachedManager cache;

	@Test
	public void testCache() {
		
		TBean tb = new TBean();
		tb.setName("E网打进");
		cache.add("bean", tb);
		
		TBean tb1 = (TBean) cache.get("bean");
		System.out.println("name=" + tb1.getName());
		tb1.setName("E网打进_修改的");
		
		tb1 = (TBean) cache.get("bean");
		System.out.println("name=" + tb1.getName());
	}

	@Override
	protected void setUp() throws Exception {
		super.setUp();
		cache = MemCachedManager.getInstance();
	}

	@Override
	protected void tearDown() throws Exception {
		super.tearDown();
		cache = null;
	}

}

 

 

参考:http://www.iteye.com/topic/264010

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值