你能向我解释一下 - 我如何在 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
但是我在官方网站上没有找到关于这个变量的任何信息。
我需要帮助!如何正确进行缓存?谢谢!