java - Java 服务器/客户端中的编码和解码

标签 java server arrays marshalling

我对如何设置具有编码和解编码功能的服务器有一些疑问。我的导师给了我代码来实现编码和解码,以及通过 TCP 发送和接收数据。 Here is my code.

首先,因为我需要为服务器和客户端发送/接收,所以我假设我需要这些文件(TCPSender.java、TCPReceiver.java 和 WireFormatWidget.java - 编码/解码类)与客户端和服务器位于同一源路径中。根据代码,这似乎就是我需要做的全部。我似乎不需要创建任何包。看起来合适吗?

第二,由于我的服务器/客户端将运行编码/解码类,我可以通过字符串输出数据,然后 WireformatWidget 将在控制台打印输出之间转换它。

最后 我不是 100% 确定通过字节数组发送的值(value),有人可以给我一个简单的说明为什么这很有用吗?另外,也许可以将我发送到他们值得信赖的来源来了解他们?我目前正在查阅 Java 文档,它很有帮助,但我想要一些针对我的应用程序更具体的内容。谢谢!

最佳答案

我认为您需要一个 Widget 来在客户端和服务器之间进行读/写。

我建议使用Externalizable如果你想控制编码/解码。还有标记界面Serializable如果你想让Java自动控制编码/解码。

至于为什么你可能需要将Widget的状态转换为byte[];通常,您可以将它们写入和/或从某个地方(例如磁盘或远程客户端)读取它们。基本上,它是一种以编程方式恢复实例状态的机制。其他此类机制涉及生成人类可读的表示(例如 XMLJSON )。

最后,为了更快地获得更好的帮助,请在您的问题中包含您的代码。使其成为站外图像的链接,使其不太可能被阅读。

关于java - Java 服务器/客户端中的编码和解码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32685585/

相关文章:

c++ - 在另一个函数中使用返回的数组指针

arrays - Swift:调用函数时调用 EXC_BAD_INSTRUCTION

java - 分配变量以显示数组索引时遇到问题

java - 对象不是抽象的,不会覆盖抽象方法

java - 如何在HQL中进行除法、计算百分比?

algorithm - 如何在多个服务器之间复制一个大文件?

java - XMPP 服务器。如何打开 TLS 连接?

Java 设置窗口的 "Document"

套接字中的 Java 客户端

存储类实现接口(interface)时出现 Java ArrayStoreException