繁体   English   中英

绑定两个没有中间Entity的Entity spring数据jpa

[英]Bind two Entity without intermediate Entity spring data jpa

我有一个用户表(和实体)

create table users(
  id                              number(9)          not null,
  alias                           varchar2(200 char),
  name_en                         varchar2(200 char),
  state                           varchar2(1)        not null
);

和用户组

create table user_groups(
  group_id                        number(9)          not null,
  alias                           varchar2(200)      not null,
  name_en                         varchar2(200 char),
  state                           varchar2(1)        not null,
  constraint user_groups1 primary key (group_id)
);

组用户存储在绑定表中

create table user_group_binds(
  group_id                        number(9)          not null,
  user_id                         number(9)          not null,
  constraint user_group_binds1 foreign key (group_id) references user_groups(group_id),
  constraint user_group_binds2 foreign key (user_id) references users(id)
);

我想在我的组实体列表中拥有 userEntity(没有绑定实体)。 有任何想法吗? 当然,我可以使用@Query 注解,但我还有其他与组映射的实体,它们会自动获取组实体。 我可以覆盖自动方法吗?

您可以使用@JoinTable并在UserGroup实体中使用连接表定义列映射

  @OneToMany(cascade = CascadeType.ALL)
  @JoinTable(name = "user_group_binds",
      joinColumns = {@JoinColumn(name = "group_id", referencedColumnName = "group_id")},
      inverseJoinColumns = {@JoinColumn(name = "user_id", referencedColumnName = "id")})
  List<UserEntity> users;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM