gpt4 book ai didi

java - 什么是实现套接字的好方法?

转载 作者:行者123 更新时间:2023-12-03 11:59:08 28 4
gpt4 key购买 nike

亲爱的 stackoverflow 社区。
目前,我正在做一个项目。这个项目应该有一个服务器和客户端连接到它。由于它们的简单性,我想使用 Java 的集成 ServerSockets 和 Sockets。

在我的项目中,数据应从客户端发送到服务器并相反。

我最初的想法是发送 JSON,然后将其解析为接收器并从中获取数据。
不过我有点不确定,因为 JSON 不是集成到 Java 中的东西,而是来自 Java 脚本。另外,我目前正在使用多线程套接字服务器,所以我有一个 ClientHandler 线程类。在那个类中,消息被接收、解析并从 JSON 中读取“action”参数,然后我做了一个包含多个 Action 及其功能的 switch 语句。我认为这也不是一个好方法。

所以,我的问题是:
我怎样才能做得更好,也许我必须使用其他东西?

提前致谢。

最佳答案

JSON 确实是从 JavaScript 发展而来的,但它本身就是一种合理的定义语言,我看不出有任何理由不应该使用它。有用于解析它的库,因此您不必这样做。

假设您的 JSON 结构因不同目的而不同,并且足够复杂以至于需要不同的类来表示它们,我喜欢 JSON 有一个参数来标识它所属的类的想法,之后您可以将解析交给一个类即理解指定的输出。然后一个类可以读取 JSON,获取类型,并且一些特定的解析例程可以从那里转到为此目的创建的对象。

我也看不出 Action 字符串有什么问题;毕竟,它对于 Swing 和其他一些 UI 来说已经足够好了。而不是分支到一个函数,再次取决于复杂性,你可以拥有所有实现一个接口(interface)的 Action 类,并且 Action '动词'可以告诉你哪个(比如 map 之外?)获取并执行' performAction()' 方法或任何你想调用的方法。

我不知道从快速描述中这有多清楚;如果您关心它,愿意在 SO 聊天室中谈论它。

关于java - 什么是实现套接字的好方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61922025/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com