在没有数据库的情况下用Java实现数据

时间:2016-02-21 14:16:39

标签: java data-structures dataset

我有一组简短的数据:
PERSON1;年龄;标记
PERSON2;年龄;标记
Person3可能;年龄;标记
..

我如何以与数据库相同的方式使用java中的这组数据,但不使用数据库?

2 个答案:

答案 0 :(得分:2)

如果只想在应用程序的生命周期内保留值,那么可以通过使用静态列表和单例对象以及哈希映射来实现这一点   但是如果你想在重新启动应用程序之后再想要这些值,那么你应该去找文件。如果你使用文件,你的代码中可能会有完整性限制。

答案 1 :(得分:1)

如果您不愿意使用外部数据服务,则可以使用数据结构存储数据或已经可用的内存数据库,如Ehcache

这些数据结构可以存储在内存或平面文件中。 如果您考虑内存存储,请考虑以下需要更快的写入和读取:

  • 如果您的数据可以分类/描述为键值对,则可以 使用, 地图 [HashMap,TreeMap,Hashtable,SortedMap]
  • 如果数据中的信息相同,您可以使用 [ 收藏,集]
  • 如果数据是分层的,请使用复杂的数据结构,例如 java class XML对象,以及上面的封装机制。
  • 如果数据是非结构化流,请使用缓冲区字符串

例如:

创建一个java类并将其包含在一个集合中:

class Person{
string name;
...
}

set<Person> people;

您可以插入和检索上述数据库[人物对象]

中的信息

如果数据太大而无法存储在内存中,您可能需要考虑将它们保存在文件中,但我觉得您的担心不在其中。