Таблица соединений, подобная приведенной ниже, может решить вашу проблему;
@Entity
@Table(name = "Groups")
public class Group {
@ManyToMany
@JoinTable(name = "Group_Users", joinColumns = {
@JoinColumn(name = "group_id", referencedColumnName = "id") }, inverseJoinColumns = {
@JoinColumn(name = "user_id", referencedColumnName = "id") })
private List<User> users;
Когда пользователь создан, он должен присоединиться к нескольким существующим группам, как эта;
Group_Users
Group_id |Идентификатор пользователя
Группа_1 |Пользователь_1
Группа_2 |Пользователь_1
Группа_3 |Пользователь_1