За да принудите Hibernate да създаде първичен ключ с двете колони, трябва да промените Collection
от Set
public class Role {
@ManyToMany(cascade = {CascadeType.PERSIST, CascadeType.MERGE})
@JoinTable(
name = "roles_privileges",
joinColumns = @JoinColumn(
name = "role_id", referencedColumnName = "id"),
inverseJoinColumns = @JoinColumn(
name = "privilege_id", referencedColumnName = "id"))
private Set<Privilege> privileges;
}
И:
public class Privilege {
@ManyToMany(mappedBy = "privileges")
private Set<Role> roles;
}