我的目标是将用GSON实例化的对象保存到数据库。合并Realm对象和Gson对象
我的问题是这样的:
我可以实例与GSON一个对象,所以GSON通吃的特性, 的护理,但那么它不会被持久化到数据库
我可以使用Realm实例化一个对象,但是我必须填写所有属性的设置器。
在我的OnCreate,这部分是这两种方法
//delete previous realm file
Realm.deleteRealmFile(this);
//gson instance
Gson gson = new Gson();
//realm instance
realm = Realm.getInstance(this);
同**我的类的名称是Vacature **
信息:我知道下面的代码需要被内:
realm.beginTransaction();
// code here
realm.commitTransaction();
选项1:
//get class with gson
Vacature vacatureGson = gson.fromJson(jsonString, Vacature.class);
这是行不通的,因为你必须使用
Class instance = realm.createObject(Class.class); // Create a new object
选项2,实例化一个境界对象:
//get instance with gson
Vacature vacatureGson = gson.fromJson(jsonString, Vacature.class);
//make instance with realm
Vacature realmVacature = realm.createObject(Vacature.class);
realmVacature = vacatureGson;
这是行不通的,因为这不是一个正确的方法将所有属性从一个对象复制到另一个对象。 如果有一种将gsonObject的所有属性复制到realmObject的好方法, 选项2可能有效。
关于如何解决这个难题的任何想法?
我正在研究这个例子:)你到目前为止做的很好!如果我理解正确,在这个例子中你手动设置了setters。 与此同时,我正在寻找一个坚实的deepcopy-all-the-properties解决方案的互联网:) – TomCB 2014-10-09 10:05:36
请让我们更新关于这个问题。如果您找不到解决方案,请告诉社区!我们一起可以解决问题! – TomCB 2014-10-13 10:58:10
我对如何解决这个问题有一个坚实的想法。我会尽力开发一个概念证明。 – Emanuelez 2014-10-13 12:18:14