`
caozuiba
  • 浏览: 904740 次
文章分类
社区版块
存档分类
最新评论

ehcache demo

阅读更多

网上找了一下ehcache的例子,感觉都不好,就自己写了一个简单的demo

在eclipse下建个java工程。

新建User.java类

package net.ehcache.demo;

import java.io.Serializable;

//放在cache里面的对象必须继承Serializable对象,这也是hibernate实体对象继承Serializable的原因。

public class User implements Serializable{
private static final long serialVersionUID = -6227376640818226890L;
private String name;
private String code;

public User(String name, String code) {
super();
this.name = name;
this.code = code;
}

public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getCode() {
return code;
}
public void setCode(String code) {
this.code = code;
}
}

新建HelloWorld.java类

package net.ehcache.demo;

import java.io.Serializable;

import net.sf.ehcache.Cache;
import net.sf.ehcache.CacheManager;
import net.sf.ehcache.Element;

public class HelloWorld {

public static void main(String[] args) {
//创建对象有很多种方式,比较常用的是根据配置文件创建,CacheManager manager = new CacheManager("src/config/other.xml");
CacheManager singletonManager = CacheManager.create();
Cache memoryOnlyCache = new Cache("testCache", 50000, false, false, 8, 2);
singletonManager.addCache(memoryOnlyCache);
//得到cache对象
Cache tesCache = singletonManager.getCache("testCache");

tesCache.put(new Element("key1","value1"));
tesCache.put(new Element("key2","value2"));

Element eleKey1 = tesCache.get("key1");

Serializable value = eleKey1.getValue();
System.out.println("key1 Object value " + value);
Object ovalue = eleKey1.getObjectValue();
System.out.println("key1 Object value " + ovalue);

//Element对象可以是任何继承Serializable接口的对象,也就是说cache可以存储任何Serializable对象。
User testUser1 = new User("张三","zhangsan");
tesCache.put(new Element("zhangsan",testUser1));
Element eleUser1 = tesCache.get("zhangsan");

value = eleUser1.getValue();
System.out.println("eleUser1 Object value " + value);
ovalue = eleUser1.getObjectValue();
System.out.println("eleUser1 Object value " + ovalue);
String userName = ((User)ovalue).getName();
System.out.println("eleUser1 getName is " + userName);

singletonManager.removeCache("testCache");
CacheManager.getInstance().shutdown();
}
}

到此demo完成。

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics