Pour forcer Hibernate à créer une clé primaire avec les deux colonnes, vous devez modifier Collection
par 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;
}
Et :
public class Privilege {
@ManyToMany(mappedBy = "privileges")
private Set<Role> roles;
}