在db4o中存储对象列表

时间:2011-09-13 12:14:17

标签: java db4o

我想知道是否有更美妙的方式存储对象列表:

ArrayList<Item> itemsList = new ArrayList<Item>;
itemsList.add(new Item(1));
itemsList.add(new Item(2));

ItemDBProvider dbProvider = new ItemDBProvider();

for (int i = 0; i < itemsList.size(); i++){
    dbProvider.store(itemsList.get(i));
}

dbProvider.getDB().commit();
dbProvider.close();

注意,ItemDBProvider只是扩展类的包装器,它打开并使用ObjectContainer。

2 个答案:

答案 0 :(得分:1)

使用增强型for循环(Java 1.5 +):

for (Item item:itemsList) {
    dbProvider.store(item);
}

答案 1 :(得分:1)

您只需使用objectcontainer.store(itemsList)将整个列表与其元素一起存储。

DB不知道这是Item的列表,因为Java的泛型类型仅在编译时可用。它也可以在其中存储List<Object>这些项目。

相关问题