0

我是java中的新手程序员。我创建了一个类似于使用套接字编程的聊天应用程序的程序。我没用过线程。

我的问题是:

每当客户端 1 想通过服务器与另一个客户端 2 通信时,我如何知道哪个客户端正在通信。

我想如果我可以通过使用会话将所有客户端与服务器端区分开来,那会更容易。只是一个偶然的想法。

为什么这么问??

我想知道这一点,因为我已经将客户端的地址连同序列号一起存储在一个文件中,以使消息对全局可见。每当客户端发送一条消息时,它都会为其添加一个序列号,该序列号是从存储在该文件中的 client1 client2 对中获得的。

任何帮助将不胜感激。我只是一个java学习者。对于我的问题中的任何含糊之处,我深表歉意。

4

1 回答 1

0

首先,尝试创建一个线程来打开一个套接字,因为它有助于您的 GUI 处理。您想查看客户名称的要点可以通过以下步骤完成:-

添加一个编辑框并输入您的姓名(客户端名称)并将此名称与消息一起发送,并在服务器端拆分消息和名称,以便您可以确定哪个消息由谁发送。

例如:- 客户名称是 Alex,消息是“hi”,那么将发送的数据类似于“Alex+hi”。现在在服务器端使用 java 中的split()函数拆分此消息。希望这种编码和解码对您有所帮助。

于 2017-10-07T06:46:43.967 回答