Java: 小 key/value 坚持者

Java: small key/value persister

我在Java中需要一个非常轻量且持久的key/value-store。 数据量非常非常少,应该很简单(getter和setter都可以对字符串进行操作)

所以我考虑使用一些小型的 NoSQL-DB,甚至为文件系统提供一些集成集合 serializer/deserializer。

但我认为 NoSQL 有点矫枉过正,我希望对于这样一个简单的需求也存在持久化。

最好的方法是什么?有什么想法吗?

大多数Map<String,String>可以序列化。例如,查看 https://docs.oracle.com/javase/8/docs/api/java/util/HashMap.html 在那里你找到了Serializable。帮自己解决问题的那点资料。

如果它是一个简单的键值字符串,您可以实现自己的东西。 (看看 Java 的 Properties class 也可以满足您的要求)。

如果您的要求稍微复杂一些,请查看您可以使用的嵌入式轻型数据库。如果您搜索一下,也许 BerkleyDB might work for you. There are quite a number of others

还要考虑您实际需要对数据执行的操作。你需要查询它(所以它需要被索引吗?)或者你只是想把它全部加载回内存中? (在这种情况下,使用简单的 JSON 或 YAML 文本格式也足够了。)