Java 如何在网络消息上编组代码
Java how to marshall code on a network message
这是一个有服务器端和客户端的聊天程序。用户向服务器发送一条消息,说明用户想要做什么。我被要求为每个消息标识符编组和解组代码。我目前有一个枚举器,其中包含服务器和客户端 classes 中的每条消息以及 id 值。我还有一个由每个消息标识符 class 实现的接口。消息标识符有7种:REGISTRATION_MESSAGE、REGISTRATION_RESPONSE、DEREGISTRATION_MESSAGE、REQUEST_REGISTERED_USERS、RESPONSE_REGISTERED_USERS、BROADCAST_MESSAGE、WHISPER_MESSAGE。总而言之,我相信如果我能理解第一条消息,我就能很容易地理解其他的。我正在努力理解这个概念,以及编组和解组的专门知识。目前,这是我目前正在苦苦挣扎的代码片段。
code snippet
我从来没有弄乱过字节,所以光是这一点就让我感到困惑。哦,我想显示我的界面可能会有用,interface code snippet, along with my enumator declartion (in both Server and Client classes, but for the case of showing you I'll show just one since they are the same) enumator code snippet
在 Socket.InputStream 中创建一个 DataInputStream,它允许您读取 short、int、long 等。使用 short 或 readUTF 读取消息类型的 ordinal/String,然后 switch
在上面,让每个消息类型实现从那里处理自己的 I/O(最好在单独的方法中完成)。
这是一个有服务器端和客户端的聊天程序。用户向服务器发送一条消息,说明用户想要做什么。我被要求为每个消息标识符编组和解组代码。我目前有一个枚举器,其中包含服务器和客户端 classes 中的每条消息以及 id 值。我还有一个由每个消息标识符 class 实现的接口。消息标识符有7种:REGISTRATION_MESSAGE、REGISTRATION_RESPONSE、DEREGISTRATION_MESSAGE、REQUEST_REGISTERED_USERS、RESPONSE_REGISTERED_USERS、BROADCAST_MESSAGE、WHISPER_MESSAGE。总而言之,我相信如果我能理解第一条消息,我就能很容易地理解其他的。我正在努力理解这个概念,以及编组和解组的专门知识。目前,这是我目前正在苦苦挣扎的代码片段。 code snippet
我从来没有弄乱过字节,所以光是这一点就让我感到困惑。哦,我想显示我的界面可能会有用,interface code snippet, along with my enumator declartion (in both Server and Client classes, but for the case of showing you I'll show just one since they are the same) enumator code snippet
在 Socket.InputStream 中创建一个 DataInputStream,它允许您读取 short、int、long 等。使用 short 或 readUTF 读取消息类型的 ordinal/String,然后 switch
在上面,让每个消息类型实现从那里处理自己的 I/O(最好在单独的方法中完成)。