JDBM2 - 磁盘的K/V存储
Apache
跨平台
Java
软件简介
JDBM2 提供了 HashMap 和 TreeMap 的磁盘存储功能,简单易用,用于持久化数据。特别适合用于嵌入到其他应用程序中。示例代码:
/** create (or open existing) database */
String fileName = "helloWorld";
RecordManager recMan = RecordManagerFactory.createRecordManager(fileName);
/** Creates TreeMap which stores data in database.
* Constructor method takes recordName (something like SQL table name)*/
String recordName = "firstTreeMap";
PrimaryTreeMap treeMap = recMan.treeMap(recordName);
/** add some stuff to map*/
treeMap.put(1, "One");
treeMap.put(2, "Two");
treeMap.put(3, "Three");
System.out.println(treeMap.keySet());
// > [1, 2, 3]
/** Map changes are not persisted yet, commit them (save to disk) */
recMan.commit();
System.out.println(treeMap.keySet());
// > [1, 2, 3]
/** Delete one record. Changes are not commited yet, but are visible. */
treeMap.remove(2);
System.out.println(treeMap.keySet());
// > [1, 3]
/** Did not like change. Roolback to last commit (undo record remove). */
recMan.rollback();
/** Key 2 was recovered */
System.out.println(treeMap.keySet());
// > [1, 2, 3]
/** close record manager */
recMan.close();