【问题标题】:Equivalent of RUBY has_many and belongs_to relationship in JavaJava中RUBY has_many和belongs_to关系的等价物
【发布时间】:2012-01-27 13:30:32
【问题描述】:

通常对于已实现的链接对象,我通常使用 getter 和 setter 方法,这样我可以将不同类型的对象添加到另一个对象。

现在我遇到了这个 Ruby 结构,例如:

class Article < ActiveRecord::Base 
  has_many :comments 
end 
class Comments < ActiveRecord::Base 
  belongs_to :article 
end  

你能告诉我这个has_manybelongs_to在Java中的等价物是什么吗?基本上我想将一些类似的数据结构从 Ruby 翻译成 Java。

【问题讨论】:

  • 这些方法特定于 Ruby 的 ActiveRecord ORM framework。指定您在 Java 项目(Hibernate、Spring...)中使用的 ORM 是什么?
  • 感谢@AlexKliuchnikau 的指出。我还是个新手,我想我得先通读 Java 的 ORM 框架。

标签: java ruby has-many belongs-to


【解决方案1】:

很大程度上取决于您使用的 ORM。大多数(我假设)人们会在 java 中使用 Hibernate。使用 Hibernate,您可以注释非常相似的关系。

@OneToMany@ManyToOne 注释似乎是您可能需要仔细查看的注释。

文章分类:

public class Article {
    @OneToMany(mappedBy = "belongsTo")
    private List<Comment> comments;
    [...]
}

评论类:

public class Comment {
    @ManyToOne
    private Article belongsTo;
    [...]
}

如果你想使用另一个 ORM,恐怕我帮不了你:)

【讨论】:

  • 谢谢你,实际上我对任何类型的 ORM 都没有太多经验,所以我必须阅读文档。
  • 如果原始帖子来自您的一个项目,那么学习 java ORM 框架应该不会太难:) 我强烈建议看看 hibernate :)
【解决方案2】:

Article 有一个 Comments 的集合。每个Comment 都有一个对其Article 的引用。

如果您要询问特定的 ORM,您需要指出是哪一个。

【讨论】:

    猜你喜欢
    • 2014-10-23
    • 1970-01-01
    • 2017-09-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-10-15
    • 1970-01-01
    相关资源
    最近更新 更多