领域:如何构建一对多的关系

时间:2015-01-31 05:59:21

标签: java android realm

我一直在寻找Android中的许多ORM,到目前为止我已经使用并且适合我的应用程序到目前为止是ActiveAndroid和SugarOrm,但我目前还不支持(不支持但可以到目前为止(通过创建sql脚本)(一对多关系)。我看着Realm ORM for android是一个非常有前途的。

Realm可以实现吗?

// this is just a sample of what i need to do.,
// parent
class Message{
  long id;
  List<Meta> messages;
}

// child
class Meta{
  long senderId;
  String message;
  Date date;
  int status;
}

// I have already know how to do this on ActiveAndroid but seems a bit hard
// to update records or fetch single data.

注意:我最近在手动创建SQL脚本时遇到了问题,并且在ORM的存在时非常耗时地编写所有这些,并且在需要更改某些内容时非常烦人我必须对其进行重组受影响的列等等。

我希望我能清楚地提出问题,希望有更好的方法。

由于

1 个答案:

答案 0 :(得分:6)

是的,Realm非常有可能。 Realm是一个对象存储,因此它可以按原样存储对象。在普通对象模型中,使用列表定义一对多关系,与Realm相同,Realm有一个名为RealmList的特殊列表,可以使用。

在Realm中,您所拥有的模型应定义如下:

class Message extends RealmObject {
  private long id;
  private RealmList<Meta> messages;

  // Getters and setters
}

class Meta extends RealmObject {
  private long senderId;
  private String message;
  private Date date;
  private int status;

  // Getters and setters
}
相关问题