ObjectOutputStream/ObjectInputStream 带套接字

ObjectOutputStream/ObjectInputStream with sockets

我正在使用 ObjectOutputStream 制作在线游戏...以交换数据。因为我有不同类型的数据,所以我只使用 write/readObject() 函数。我想知道为命令发送字符串是否是一种好的做法,或者是否有更好、更安全的解决方案。

当我说我用字符串发送命令时,例如我有一个聊天,我想忽略一个用户,所以我发送到服务器"block +username";如果我想添加朋友,我发送 "addfriend +username",等等

好吧,如果您要进行认真的安装,使用序列化对象可能会产生大量的互操作性工作。它也可能成为瓶颈。如果您正在寻找紧凑的本土协议,我会(除了明显使用任何其他消息传递协议之外)坚持使用 DataOutputStream。

将字符串作为序列化 java 对象发送是最令人惊讶的事情(并且不会轻易让您拥有不同语言的客户端或服务器)。

如果你想酷一点,就用JSON和Websocket。 :)