我对如何设置具有编码和解编码功能的服务器有一些疑问。我的导师给了我代码来实现编码和解码,以及通过 TCP 发送和接收数据。 Here is my code.
首先,因为我需要为服务器和客户端发送/接收,所以我假设我需要这些文件(TCPSender.java、TCPReceiver.java 和 WireFormatWidget.java - 编码/解码类)与客户端和服务器位于同一源路径中。根据代码,这似乎就是我需要做的全部。我似乎不需要创建任何包。看起来合适吗?
第二,由于我的服务器/客户端将运行编码/解码类,我可以通过字符串输出数据,然后 WireformatWidget 将在控制台打印输出之间转换它。
最后 我不是 100% 确定通过字节数组发送的值(value),有人可以给我一个简单的说明为什么这很有用吗?另外,也许可以将我发送到他们值得信赖的来源来了解他们?我目前正在查阅 Java 文档,它很有帮助,但我想要一些针对我的应用程序更具体的内容。谢谢!
最佳答案
我认为您需要一个 Widget
来在客户端和服务器之间进行读/写。
我建议使用Externalizable
如果你想控制编码/解码。还有标记界面Serializable
如果你想让Java自动控制编码/解码。
至于为什么你可能需要将Widget
的状态转换为byte[]
;通常,您可以将它们写入和/或从某个地方(例如磁盘或远程客户端)读取它们。基本上,它是一种以编程方式恢复实例状态的机制。其他此类机制涉及生成人类可读的表示(例如 XML 和 JSON )。
最后,为了更快地获得更好的帮助,请在您的问题中包含您的代码。使其成为站外图像的链接,使其不太可能被阅读。
关于java - Java 服务器/客户端中的编码和解码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32685585/