сложная спецификация данных о весне

#java #spring-boot #hibernate #many-to-many

Вопрос:

отказ от ответственности, я плохо говорю по-английски, извините.

У меня есть три сущности, одна из которых действует как множество для двух других:

 @Entity(name = "user") public class User{  ...   @OneToMany(mappedBy = "user")  Listlt;Sanctiongt; sanctions;   ... }  @Entity(name = "mission") public class Mission{  ...   @OneToMany(mappedBy = "mission")  Listlt;Sanctiongt; sanctions;   ... }  @Entity(name = "sanction") public class User{  ...   @ManyToOne  @JoinColumn(name = "user_id", referencedColumnName = "id")  private User user;   @ManyToOne  @JoinColumn(name = "mission_id", referencedColumnName = "id")  private Mission mission;   ... }  

Мне нужна спецификация, которая позволит получить список миссий, на которые пользователь N не имеет санкции.

 public static Specificationlt;Missiongt; findNotAssignedToUser(final String userName) {  return ((root, query, cb) -gt; {  // ?  }); }  

Комментарии:

1. Вы не можете создать такую спецификацию, миссия и пользователь не связаны, единственный способ связаться с пользователем из миссии-это получить санкцию, и если вы пройдете через санкцию, у всех ваших пользователей будет по крайней мере одна санкция. Обновите свои сущности, чтобы включить связь между пользователем и миссией