Ebean を ORM として使用する Play Framework 2.0 を使用して、小さなアプリを作成しています。したがって、 User クラスと UserGroup クラスの間に多対多の関係が必要です。ここにいくつかのコードがあります:
@Entity
public class User extends Domain {
@Id
public Long id;
public String name;
@ManyToMany(fetch = FetchType.EAGER, cascade = CascadeType.ALL)
public Set<UserGroup> groups = new HashSet();
}
@Entity
public class UserGroup extends Domain {
@Id
public Long id;
public String name;
@ManyToMany(mappedBy="groups")
public Set<User> users = new HashSet();
}
データベーススキームジェネレーターは、中間テーブルを使用してそのコードの適切なスキームを生成し、多対多を使用するまではすべて正常に機能します。
だから私は1つのリクエストでグループを追加しています:
user.groups.add(UserGroup.find.byId(groupId));
user.update();
そして、それらを別の System.out に出力しようとしています:
System.out.println(user.groups);
そして、これは次を返します:
BeanSet 遅延
クイック検索は、BeanSet が Ebean からの遅延読み込みコンテナーであることを示しています。しかし、それが適切に機能していないように思われるか、何か重要なことを見逃していました。
私が間違っていることについて何か考えはありますか?