如何使用回调进行会话模式?

时间:2016-09-19 06:03:25

标签: java session design-patterns callback rmi

我知道如何在没有像How to organize RMI Client-Server architecture这样的回调的情况下进行会话模式。但我不知道怎么做回调。登录时是否需要另一个会话对象供客户端传递给服务器?如果是,我将它保留在服务器端:在服务器会话中保留客户端会话的引用,或者在其他地方(如登录服务器)保存所有客户端会话的集合?如果没有实现客户端回调方法的对象是什么?

也许有人可以提供一个代码示例,就像我链接的问题一样,因为那个很清楚,而且我没有为回调找到一个。

答案不一定是严格的RMI,但我看到很多问题没有答案,所以我添加了标签。

1 个答案:

答案 0 :(得分:1)

您需要一个远程对象,以便客户端传递给调用回调的服务器。鉴于您在登录时提供会话对象,它很可能是一个会话对象,但这里确实没有足够的信息。这取决于你想要的是什么。

如果你希望它是一个会话对象,即一个会话独有的会话对象并且不存在,你应该确保:

  1. 客户端在退出时取消导出,
  2. 当注销发生时服务器丢失对该对象的引用,这可以通过将其存储在服务器分配的会话对象中来轻松完成。