android:在sqlite数据库中缓存gson数据

时间:2014-05-04 12:28:45

标签: android sqlite orm gson sugarorm

我想使用本地sqlite数据库来缓存所有gson对象。因此我创建了一些像这样的Gson类:

package com.getbro.bro.Json;
import com.google.gson.annotations.SerializedName;
public class User  extends Item {

    public User(String Sex, String UserName, String[] Followed){
        this.Sex = Sex;
        this.UserName = UserName;
        this.Followed = Followed;
    }

    @SerializedName("sex")
    public String Sex;

    @SerializedName("username")
    public String UserName;

    @SerializedName("followed")
    public String[] Followed;

    @Override
    public String toString() {
        return UserName;
    }
}

现在我想将此类用作Sugar ORM模型,但是,我必须将构造函数重写为:

public User(Context c, String Sex, String UserName, String[] Followed){
        this.Sex = Sex;
        this.UserName = UserName;
        this.Followed = Followed;
}

我怎样才能让Gson使用这个"特别"构造函数并选择wright上下文?

1 个答案:

答案 0 :(得分:4)

1.3发布时,Sugar在构造函数中不需要Context参数。因此,Gson类很容易使用Sugar。

特别是使用Gson,您可以使用自定义序列化程序,以防您没有默认构造函数。这里有更多细节.. https://sites.google.com/site/gson/gson-user-guide#TOC-Custom-Serialization-and-Deserialization