1

你能向我解释一下 - 我如何在 playframework 中使用 memcached? 我必须将模型放在缓存中吗

在官方网站的示例中,他们将缓存代码放在控制器中,但我认为这是个坏主意 - 控制器方法变得太复杂,我必须重复相同的代码部分。

我尝试将缓存代码放入模型的方法中(Overide save() 和 delete()):

@Override
public News save() {
News news = super.save();
List<News> newsList = News.findAll();
Cache.set("news", newsList);
return news;
}

但是我有更多的保存和删除方法!例如:

public static int deleteAll();

public static int delete(String query, Object... params);

我无法覆盖它们,因为它们是静态的(在最后一个中,我无法接收有关已删除对象的信息)。

我在互联网上找到了关于这个主题的内容:

这个问题的答案中,我发现:“模型缓存:通过休眠完成,无需实现任何东西” 这是什么意思?如何打开此选项?

这里有一些关于休眠缓存的信息将变量放在 application.conf 中是必要的:

hibernate.cache.provider_class=com.googlecode.hibernate.memcached.Memcached CacheProvider 
hibernate.cache.use_query_cache=true 
hibernate.memcached.servers=127.0.0.1:11211 
hibernate.memcached.cacheTimeSeconds=300 

但是我在官方网站上没有找到关于这个变量的任何信息。

我需要帮助!如何正确进行缓存?谢谢!

4

0 回答 0