我想知道是否有更美妙的方式存储对象列表:
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。
答案 0 :(得分:1)
使用增强型for循环(Java 1.5 +):
for (Item item:itemsList) {
dbProvider.store(item);
}
答案 1 :(得分:1)
您只需使用objectcontainer.store(itemsList)
将整个列表与其元素一起存储。
DB不知道这是Item
的列表,因为Java的泛型类型仅在编译时可用。它也可以在其中存储List<Object>
这些项目。