首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何使用链接表映射Hibernate中的多到多列表

如何使用链接表映射Hibernate中的多到多列表
EN

Stack Overflow用户
提问于 2008-12-22 23:49:41
回答 4查看 26.1K关注 0票数 7

我想用一个链接表来映射Hibernate中的多到多。我有两个班,家长班和孩子班,例如:

代码语言:javascript
运行
复制
public class Parent{

private List<Child> _children;

//...getters and setters
}

我使用一个链接表(link_table),包括link_idparent_idchild_id三列。数据库是server,id类型是统一标识符。所以,我通常用guid作为id字段。

如果这是要使用的正确标记,那么如何使用<list />标记来实现这一点?你知道有什么好的文件可以完成这个任务吗?

我目前正在获得一个ConstraintViolationException,但还没有找到任何好的文档或示例。

我认为一个主要的问题是:如何指定在链接表. link_id中自动生成的.

EN

Stack Overflow用户

发布于 2008-12-23 01:30:42

我使用注释(特别是@ManyToMany和@JoinTable)来完成此操作:

Hibernate文档:

代码语言:javascript
运行
复制
@Entity
public class Employer implements Serializable {
    @ManyToMany(
        targetEntity=org.hibernate.test.metadata.manytomany.Employee.class,
        cascade={CascadeType.PERSIST, CascadeType.MERGE}
    )
    @JoinTable(
        name="EMPLOYER_EMPLOYEE",
        joinColumns=@JoinColumn(name="EMPER_ID"),
        inverseJoinColumns=@JoinColumn(name="EMPEE_ID")
    )
    public Collection getEmployees() {
        return employees;
    }
}


@Entity
public class Employee implements Serializable {
    @ManyToMany(
        cascade = {CascadeType.PERSIST, CascadeType.MERGE},
        mappedBy = "employees",
        targetEntity = Employer.class
    )
    public Collection getEmployers() {
        return employers;
    }
}
票数 8
EN
查看全部 4 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/387806

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档