Hibernate JoinList, как присоединиться с пути - PullRequest
0 голосов
/ 29 декабря 2018

У меня есть такие классы:

@Entity
public class Renter {
    @Id
    @GeneratedValue(strategy = GenerationType.TABLE)
    private Long id;


    @OneToOne
    private House house;
}

@Entity
public class House {
    @Id
    @GeneratedValue(strategy = GenerationType.TABLE)
    private Long id;


    @OneToMany(mappedBy="house")
    private List<Room> rooms;
}

@Entity
public class Room {
    @Id
    @GeneratedValue(strategy = GenerationType.TABLE)
    private Long id;

    @ManyToOne
    private House house;

    @Column
    private Integer type;
}

Как найти всех арендаторов, которые живут в доме, в котором есть комнаты с типом "1".Если бы корень был домом, я мог бы выполнить подобный код

        CriteriaBuilder criteriaBuilder = session.getCriteriaBuilder();
    CriteriaQuery<House> queryOrganisation = criteriaBuilder.createQuery(House.class);
    Root<House> rootOrganisation = queryOrganisation.from(House.class);
    queryOrganisation.select(rootOrganisation).where(criteriaBuilder.equal(rootOrganisation.join("rooms").get("type")), 1);

Но путь не имеет метода .join, что я могу сделать?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...