PlayFramework共享缓存问题

时间:2011-08-26 05:36:27

标签: playframework

您好我正在使用路由动态创建子目录,类似

GET     /event/{nick}                           EventPageController.show

我用它之类的东西

example.com/event/congres2011
example/com/event/symposiumXI

然后我在数据库中获得第一个事件并保存在密钥缓存

public static void show(String nick) {
        Event event = Event.find("byNick", nick).first();
        if (event == null) {
            redirect("/");
        }
        Cache.add("event", event);
        render(event);
    }

但是当我请求第二个(例如/ com / event / symposiumXI)时,show方法使用相同的键来保存新的请求事件,因此第一个事件丢失了上下文。请问我该如何控制它?或者我可以同时重新使用一个事件......?

1 个答案:

答案 0 :(得分:2)

由于您使用的是静态密钥“event”,因此将替换它。您可能希望通过使密钥类似nick + "event"

来使其更具上下文感知能力