私は(今日)NoSql MongoDbを初めて使用し、Morphiaを理解しようとしています。
次のような @Entity が 1 つ必要です。
Stat
Friendlist
Userdataという名前の 3 つのテーブル (コレクション) がある場合
、UserData.Class を Userdata に保存し、Statistic.Class を Stat に保存します...
私の考えは、各ユーザーに一意の ObjectId UUID nr を与えてから、この UUID nr を ObjectId として持つすべての Statistic と FriendList を与えることでした。プログラムが統計のみを実行する必要がある場合、統計のみに対してロード/動作するためです。
@Entity
public class UserData {
@Id private ObjectId id = "UUID 123456789;
public String userName = "";
public String password = "";
@Embedded
private Statistic statistic;
@Embedded
private FriendList friendList;
}
UserData を取得するための 18000/時間のリクエストがある場合、次のように宣言する方が速くないでしょうか:
(同じ ObjectId を使用し、それらは別々のコレクション (テーブル) に保存されます)
@Entity
public class UserData {
@Id private ObjectId id = "UUID 123456789;
public String userName = "";
public String password = "";
}
@Entity
public class Statistic {
@Id private ObjectId id = "UUID 123456789;
public int loginTimes;
public String gps;
}
@Entity
public class FriendList {
@Id private ObjectId id = "UUID 123456789;
public ArrayList<String> fiends;
}