我正在用 Java 编写一个程序来跟踪有关棒球卡的数据。我正在尝试决定如何持久存储数据。我一直倾向于将数据存储在 XML 文件中,但我不熟悉 XML API。(我已经阅读了一些在线教程并开始尝试javax.xml
层次结构中的类。)
该软件具有主要用例:用户将能够添加卡片和搜索卡片。
当用户添加卡片时,我想立即将数据提交到持久存储。标准 API 是否允许我以随机访问的方式插入数据(甚至附加可能没问题)。
当用户搜索卡片时(例如,通过玩家的名字),我想从存储中加载一个列表,而不必加载整个文件。
我最担心的是我需要存储大量独特卡片的数据(大约数千张,可能更多)。我不想在程序打开时将所有卡的列表存储在内存中。我没有运行任何测试,但我相信我可以轻松地达到内存限制。
XML 可能不是最好的解决方案。但是,我想让它的安装尽可能简单,所以我试图避免使用 JDBC 或任何第三方库的成熟数据库。
所以我想我在问我是否朝着正确的方向前进,如果是这样,我在哪里可以了解更多关于以我想要的方式使用 XML 的信息。如果没有,是否有人对我可以使用哪些其他类型的存储来完成此任务有建议?