【问题标题】:Hibernate ORM modelling composite keys when to insert data into MYSQLHibernate ORM建模复合键何时将数据插入MYSQL
【发布时间】:2018-09-19 04:31:32
【问题描述】:

我正在尝试将数据从 csv 插入 MySQL 数据库,以维护表之间的关系。

CSV 格式:

group1, John, 45, Hockey Fishing Movies
group1, Mary, 28, Dancing Fishing Rugby
group2, Ellen, 18, Fishing Netflix Facebook
group3, Paul, 19, Fishing Facebook Netflix

我有一个如下所示的数据库架构:

我已经抽象出这个例子来适应我的模型,并且在解析、数据库连接等方面没有问题。纯粹是在 hibernate 中建模以及如何正确执行插入。看了一些不同的休眠教程,但还没有看到我在找什么。就在hibernate中建模而言,hibernate是正确的方法吗?

注意:只需要插入

在此先感谢,非常感谢任何帮助

【问题讨论】:

  • 建模的哪个部分您觉得困难?您指的是感兴趣的人吗?

标签: java mysql hibernate jpa orm


【解决方案1】:

Person to Interest 与我看起来是多对多关系,person_interest 作为映射表。您可以建模双向@ManyToMany 关系,如

@Entity
@Table(name = "Person")
public class Person {
    .....

    @ManyToMany
    @JoinTable(
        name = "person_interest ", 
        joinColumns = { @JoinColumn(name = "personId") }, 
        inverseJoinColumns = { @JoinColumn(name = "interestId") }
    )
    private Set<Interest> interests = new HashSet();

    ..... other attributes and getter/setters
}

这是兴趣与人的反向关系。

@Entity
@Table(name = "Interest")
public class Interest{
    .....

    @ManyToMany
    private Set<Person> persons = new HashSet();

    ..... other attributes and getter/setters
}

更多reading

【讨论】:

    猜你喜欢
    • 2010-12-10
    • 2019-03-08
    • 1970-01-01
    • 1970-01-01
    • 2011-01-26
    • 1970-01-01
    • 1970-01-01
    • 2015-06-22
    • 1970-01-01
    相关资源
    最近更新 更多