1

我有一个用 Java 编码的 RuneScape Private Server 项目,并且正在尝试编写一个玩家可以使用的个人“标签”。我已经设法做到了,但是每次服务器重新启动时,它们的“标签”都会重置为“null”。

他们的“标签”通过执行命令“;;settag [name]”来初始化。然后他们的标签被设置为他们想要的任何东西。我通过一个字符串做到了这一点:

      if (command[0].equals("settag")) {
            newTag = getCompleteString(command, 1);
newTag = player.yellTag
                player.sendMessage("Your tag is now:" +newTag);
            }

我不确定解决此问题的最有效方法是什么,我正在考虑通过 .xml/.txt 文件加载和保存。顺便说一句,player.yellTag 是下一个命令 (::mytag) 搜索它的地方,它工作正常,直到服务器重新启动。

4

1 回答 1

0

这一切都取决于您的应用程序的上下文。如果您计划拥有少于几百名玩家,那么一个xml文件可能就可以了。您应该查看JAXB,这是在 Java 中存储对象的标准方法。您还可以使用gson将它们存储为 JSON 文件,这比 XML 文件更易于使用和实现。

但是,如果您拥有超过数千名玩家,您可能希望通过将标签放入数据库来获得一些更有效的方法来序列化标签,因此像hibernate这样的 ORM 库可以帮助您做到这一点。

您可能想要制作自己的东西,例如一个tag充满文件的目录,该目录以您的玩家的唯一 ID 命名,包含玩家的标签……这更加“hackish”,但仍然非常有效。

于 2013-06-09T22:28:55.427 回答