所以在这里我得到一个Json响应,其中包含表和相应数据的列表。我已经手动创建了包含所有表的main.sqlite数据库,现在我想将响应数据存储在各自的表中。我正在尝试找出实现它的优化方法,因为每24小时后我会得到更新的响应,我会有再次存储。请帮助我。提前谢谢。
以下是我的JSON响应示例
{
"main": {
"tableOne": [{
"colOne": 1,
"colTwo": "two"
}, {
"colOne": 3,
"colTwo": "three"
}],
"tableTwo": [{
"colOne": 1,
"colTwo": "two"
}, {
"colOne": 1,
"colTwo": "two"
}]
}
}
答案 0 :(得分:0)
您可以尝试这样的事情:
void AddJsonToDB(String jsonString, SQLiteDatabase db) throws Exception{
JSONObject jsonObj = new JSONObject(jsonString);
JSONArray jsonArray = jsonObj.getJSONArray("tableOne");
if (jsonArray.length() == 0) return 0;
for (int i = 0; i < jsonArray.length(); i++) {
ContentValues args = new ContentValues();
args.put("colOne", jsonobject.getInt("colOne"));
args.put("colTwo", jsonobject.getString("colTwo"));
db.insert("tableOne", null, args);
}
jsonArray = jsonObj.getJSONArray("tableTwo");
if (jsonArray.length() == 0) return 0;
for (int i = 0; i < jsonArray.length(); i++) {
ContentValues args = new ContentValues();
args.put("colOne", jsonobject.getInt("colOne"));
args.put("colTwo", jsonobject.getString("colTwo"));
db.insert("tableTwo", null, args);
}
}