开发者社区> 问答> 正文

自动生成的中间表怎么添加主键 Hibernate @ManyToMany

如题, 现有 user(被控), role(主控) 两张表, 各自主键是user_id和role_id,

在User实体类 添加如下注解:

@JoinTable(name="user_role_map",
            joinColumns={@JoinColumn(name="user_id")},
            inverseJoinColumns={@JoinColumn(name="role_id")}
    )
    private List<Role> roleList;

在Role实体类 添加如下注解:

@ManyToMany(mappedBy = "roleList")
    private List<User> userList;

启动tomcat ,自动生成的表 user_role_map 结构如下:
screenshot
问:如何配置hibernate的注解,使得在该表中能自动多生成一个主键字段,要求字段名自定义,比如就叫 id

展开
收起
爵霸 2016-03-04 08:56:07 4043 0
1 条回答
写回答
取消 提交回答
  • 需要增加个关系类来映射,这里的List也不是Role了而是这个关系类了

    2019-07-17 18:51:47
    赞同 展开评论 打赏
问答标签:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载