Xcache写法

添加依赖

请在pom.xml增加如下依赖:

<dependency>
  <groupId>com.xiaonei</groupId>
  <artifactId>xiaonei-xcache</artifactId>
</dependency>

代码示例

//获取XCache实例,传入的prefix参数
//prifix的格式是"namespace.type",namespace是指当前要操作的数据所属的命名空间或者业务类型,如ugc或home等,
//而type是指当前数据的类型,如blog或photo等。"namespace.type"是能够唯一标识一种数据类型的。
XCache<Blog> blogCache = XCache.getCache("ugc.sharedBlog", Blog.class);
//获取XCache实例后就能进行各种memcached操作
//在set操作中,需要传入三个参数,第一个参数是数据的id,使得namespace+type+id能够唯一标识一条数据。
//第二个参数是要set的对象,第三个参数是过期时间。
blogCache.set(blog.getId(), blog, XCache.EXPIRE_HOUR * 2);

//get操作时,只用传入ID即可。
Blog b = cache.get(blog.getId());

//如果要操作另一种类型的数据,比如"ugc.photo",则需要获取针对这一类型的XCache实例
XCache<Photo> photoCache = XCache.getCache("ugc.photo", Photo.class);
Photo f = photoCache.get(photoId);

@Override
	public List<AppPageRelation> selectAppPageRelationByPageId(int appPageId) {
		// TODO Auto-generated method stub
		XCache<List> appPageRelationListCache = XCache.getCache("fuxi.appPageRelationList", List.class);
		List<AppPageRelation> list = (List<AppPageRelation>) appPageRelationListCache.get(String.valueOf(appPageId));
		//取缓存
		if(list.size()>0 &&list != null){
			return list;
		}else{
			//如果没有,则存入缓存
			list =  appPageRelationDAO.selectListByPageId(appPageId);
			appPageRelationListCache.set(String.valueOf(appPageId), list, XCache.EXPIRE_HOUR * 2);
		}
		return list;
	}

你可能感兴趣的:(cache)