从JSON读取数据,并使用ormlite其保存在Android应用(Reading data fro

2019-10-21 02:32发布

我在做的工作与Android数据库新。 我的问题是,我有我想要解析它在我的Android应用程序中的JSON数据。 具体来说,我想利用这些数据并将其保存在我的应用程序的数据库,是ORMLITE。 有没有人有这个例子的任何这样请不要跟我分享一下。 任何一种视频教程或任何会有所帮助在这里。 提前致谢

Answer 1:

我会利用GSON库是用于处理JSON超级有用

https://code.google.com/p/google-gson/

然后,你需要创建一个Java类与所有的JSON有要分析的数据的。

如果您的JSON是这样的:

{
"id":4854
"name":"Charlie"
"age":35
"eye_color":"blue"
}

然后,你想创建一个类匹配的数据。 区分大小写。

public class Data implements Serializable {
        private int id;
        private String name;
        private int age;
        private String eye_color;
    }

    public class Item implements Serializable{
}

现在,您可以创建从JSON Java对象:

Gson gson = new Gson();
Data data = gson.fromJson(yourJsonHere, Data.class)

和繁荣! 您的data对象现在您的JSON是什么。



Answer 2:

好吧,我不使用ORMLITE,我使用GreenDao作为ORM,但我想这是同样的事情。 对于解析JSON有一些图书馆,帮助,我总是尝试使用GSON这是处理对象和JSON数据之间的序列化库。 有很多关于GSON网络和大量的实例上的文档。 搜索。 我建议使用这种方法,对我来说是更好的。 您还可以解析与org.json.JSON库JSON。 这一个是更多的“手”的解析器,但可能是非常有用的。 例如:

以下JSON:

{
    "name": "MyName",
    "age": 24
}

要映射到目标人物是由ORMLITE生成的数据模型类:

public class Person {
    private String name;
    private int age;

    public void setName(String name) {
        this.name = name;
    }

    public void setAge(int age) {
        this.age = age;
    }
}

你可以这样做:

Person myPerson = new Person();
//This is the use of the org.json.JSON library
JSONObject jObject = new JSONObject(myJSONString);
myPerson.setName(jObject.getString("name"));
myPerson.setAge(jObject.getInt("age"));

这就是一种方式。 当然JSON库有许多功能和类型,以帮助您JSON数据。 看看这个。

但随着GSON所有的代码将减少到:

Gson gson = new GsonBuilder().create();
Person myPerson = gson.fromJson(myJSONString, Person.class);

所以,再一次尝试使用GSON,这是最好的方式。 希望能帮助到你



文章来源: Reading data from json and saving it in android app using ormlite