0

如果您有一个 Java 客户端 Socket 连接到 Java 服务器的 ServerSocket,那么您如何在客户端类中获取 Java 服务器对象?

我查看了 Socket 类,似乎没有通过 Socket.connect()ion 获取服务器对象的方法。

我问的原因是,我想从客户端向服务器发送一条指令,以取消客户端从服务器订阅进一步更新的注册。我的服务器-客户端关系基于观察者模式。

要执行该指令,我相信我需要获取服务器对象。

我问这个问题是因为我在 Google 或 stackoverflow.com 上没有找到任何将观察者模式与服务器-客户端套接字关系相结合的东西。

当然,这可能表明我的方法存在最终缺陷,但如果是这样,就让它成为对其他人的警告:)

4

1 回答 1

2

它不是 100% 清楚你在问什么,但这里有。

如果您希望远程客户端向服务器端指示它已完成,则让它发送一条服务器端理解为已完成的消息,然后简单地关闭服务器端和客户端上的套接字对象。如果合适,服务器套接字可能会继续侦听更多连接。

如果在服务器端处理客户端连接的套接字要关闭服务器套接字,以便它不再侦听传入连接,则只需将两个套接字传递给处理正在处理客户端连接的套接字的代码。

于 2012-04-28T05:51:21.983 回答