话说要做个小东西,领头的要求用Hibernate框架来做ORM,要能存放instance,,
想了想好象不太相干,hibernate的缓存是对数据库的数据做查询缓存和对象缓存..而instance
是其他对象的,非数据对象,所以决定用ehcache来手动实现缓存instance..
在打开项目包后发现有EhCache.jar这个包,于是想利用hibernate的接口来操作ehcache,在网上找了
很久,大多都是说怎么配置hibernate的缓存,通过看源码了解了
org.hibernate.cache.CacheProvider 这个是hibernate的缓存提供接口
org.hibernate.cache.EhCacheProvider.EhCacheProvider 是hibernate ehcache缓存的实现类
在CacheProvider.buildCache 后会返回org.hibernate.cache.Cache 接口,
对应的实现是 org.hibernate.cache.EhCache实现类
完整代码是:
//加载缓存源
CacheProvider provider = new EhCacheProvider();
provider.start(new Properties());
//创建缓存对象
Cache cache = provider.buildCache("instance", null);
cache.put("key1","value1d");
System.out.println(cache.get("key1"));
cache.remove("key1");
System.out.println(cache.get("key1"));
System.out.println(cache.toString());