是否有可能在春天为ehcache增加新的价值?

时间:2014-04-21 16:46:51

标签: java spring ehcache

我正在尝试在我的java项目中使用ehcache,这对我来说是新的。

现在我使用ehcache检索区域列表,并且我的项目添加了新区域,那时我使用@TriggersRemove功能一次清除缓存然后重新加载它。

例如:我有10个区域并使用ehcache,我再添加一个区域,清除缓存并重新加载。

是避免缓存中数据重新加载的任何其他选项。

我的代码:

@Cacheable(cacheName="retrieveAreas")
public List<AreaBO> retrieveAreas(){

      //some code here
}

@TriggersRemove(cacheName="retrieveAreas", removeAll=true)
public long addArea(AreaBO areaBO) throws UserServiceException{

      // some codes here

}

1 个答案:

答案 0 :(得分:0)

您似乎正在使用EhCache中的注释。如果您从3.1版开始转到Spring提供的缓存注释,那么您的代码将是:

@Cacheable(value="retrieveAreas")
public List<AreaBO> retrieveAreas(){

      //some code here
}

@CachePut(value="retrieveAreas")
public long addArea(AreaBO areaBO) throws UserServiceException{

      // some codes here

}

您可以看到的差异在于@CachePut注释,该注释将方法的返回值添加到指定的缓存中。 我不知道EHCache中的相应注释