Java ORM:条款、修订和主要修订

Java ORM:条款、修订和主要修订,java,hibernate,jpa,orm,Java,Hibernate,Jpa,Orm,ORM中存储文章及其修订版的最佳实践是什么?当我自己存储在SQL中时,我曾经有以下结构: articles [id, parent_id, name, text] 通过家长id,我可以很容易地识别家长文章: SELECT * FROM articles WHERE parent_id = 0; 将选择父版本和 SELECT * FROM articles WHERE parent_id = 330; 将选择第330条的所有修订 在ORM中这样做的正确方法是什么?我宁愿: 整数父ID

ORM中存储文章及其修订版的最佳实践是什么?当我自己存储在SQL中时,我曾经有以下结构:

 articles [id, parent_id, name, text]
通过家长id,我可以很容易地识别家长文章:

 SELECT * FROM articles WHERE parent_id = 0;
将选择父版本和

 SELECT * FROM articles WHERE parent_id = 330;
将选择第330条的所有修订

在ORM中这样做的正确方法是什么?我宁愿:

  • 整数父ID

  • 文章父篇文章

  • 列出修订


  • 如果您有任何建议,我将不胜感激。

    将您的sql转换为hibernate/jpa实体:

    @Entity
    @Table.....
    public class Article {
    
        @Id
        @Column
        private Integer id,
    
        @OneToMany(mappedBy="parentArticle")        
        private Set<Article> childArticles;
    
        @ManyToOne
        @JoinColumn(name="parent_id")
        private Article parentArticle
    
        @Column
        private String name,text
        ...
    
    @实体
    @表。。。。。
    公共类文章{
    @身份证
    @纵队
    私有整数id,
    @OneToMany(mappedBy=“parentArticle”)
    
    私有集

    将sql转换为hibernate/jpa实体:

    @Entity
    @Table.....
    public class Article {
    
        @Id
        @Column
        private Integer id,
    
        @OneToMany(mappedBy="parentArticle")        
        private Set<Article> childArticles;
    
        @ManyToOne
        @JoinColumn(name="parent_id")
        private Article parentArticle
    
        @Column
        private String name,text
        ...
    
    @实体
    @表。。。。。
    公共类文章{
    @身份证
    @纵队
    私有整数id,
    @OneToMany(mappedBy=“parentArticle”)
    
    私人设置

    这正是我要找的!谢谢!这正是我要找的!谢谢!