在ORMLite中为ApplicationSettings存储多个ArrayLists的最佳方法

时间:2012-11-26 18:05:52

标签: java database orm ormlite

目前我正在尝试在DB的帮助下将应用程序的设置保留到ORMLite

我的设置包含不同的String[]ArrayList<String>,或者Map实际上只是一堆Strings。所以我的问题是,我应该为这种情况使用什么数据类型和可选的,也许你也可以给我一个小的code example

现在我尝试了不同的东西,但我从未对解决方案感到满意。我试过像:

这样的东西
private HashMap<String, ArrayList<String>> configurationMap;

private String[] stringArr1;
private String[] stringArr2;

private ArrayList<String> arrList1;

但是在设置DB Datatypes时,我总是认为,“我不想要一个额外的表来存储数据”或“将一个地图序列化到数据库很糟糕......”。

也许有人知道如何以一种便捷的方式解决这个问题?

1 个答案:

答案 0 :(得分:10)

对于arrayList,您只需执行以下操作:

public class YourClass{
    @GeneratedId
    private int id;

    @ForeignCollectionField
    private Collection<MyString> bunchOfStrings = new ArrayList<MyString>();
    ...
}

在MyString类中,您有以下内容:

public class MyString{
    @DatabaseField(canBeNull = true, foreign = true)
    private YourClass yourClass;

     @DatabaseField
     private String text;
    ....
}

这就是全部