在Ebean中创建嵌套对象的最简单方法是什么?

Vid*_*ige 4 java orm nested playframework ebean

我需要两个名为"States"和"Children"的Ebean模型类."State"对象可以包含嵌套的Child对象(子列表).

这是基本的国家阶级,

@Entity
public class States extends Model {

    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private long id;

    @Constraints.Required(message = "stateName cannot be null")
    @Column(nullable = false)
    private String statename;

    @Column(nullable = true)
    private String url;

    @Column(nullable = true)
    private String parent;

    private List<Children> childrenList;
}
Run Code Online (Sandbox Code Playgroud)

这是基本的儿童班,

@Entity
public class Children extends Model {

    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private long id;

    @Column(nullable = false)
    private String statename;

    @Column
    private String child;
}
Run Code Online (Sandbox Code Playgroud)

应该对这些类使用Ebean ORM创建State对象的最小修改是什么?我经历了这个帖子,

OneToMany关系的Ebean查询

但在那里,已经提出了很多改变.我只想进行最小的修改.

Vid*_*ige 5

我所要做的就是对"国家"级做一个小修改,

@Entity
public class States extends Model {

    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private long id;

    @Constraints.Required(message = "stateName cannot be null")
    @Column(nullable = false)
    private String statename;

    @Column(nullable = true)
    private String url;

    @Column(nullable = true)
    private String parent;

    @OneToMany(cascade = CascadeType.ALL)
    private List<Children> childrenList;
}
Run Code Online (Sandbox Code Playgroud)

只有改变我在这里做的是,

@OneToMany(cascade = CascadeType.ALL)
Run Code Online (Sandbox Code Playgroud)

我没有对"儿童"课程做任何改动.在开始我设置的播放应用之前

play.evolutions.enabled = true

在"application.conf"文件中.然后使用在"evolution.default"文件夹中创建的evolution SQL文件,我调整了数据库的模式.之后,使用嵌套的"Children"对象成功创建了"States"对象.