Как использовать несколько таблиц в динамическом запросе критериев гибернации? - PullRequest
0 голосов
/ 27 мая 2018

У меня есть 2 объекта

public class EstMast implements java.io.Serializable {

    private Long estCode;
    private String estName;
    private String estName;
    private Long esttypeCode;
    private String activeYn;
}

public class DisabEst implements Serializable {
    private static final long serialVersionUID = 1L;

    private long runId;

    private Long estCode;

    private Long regionCode;

    private String spec;
}

Мне нужно выполнить условный запрос, если вход 2 не нулевой, мне нужно выполнить этот запрос

SELECT est FROM EstMast est, DisabEst dis WHERE est.estCode = dis.estCode AND est.esttypeCode =:input1

и если вход 2 присутствует, янужно добавить один запрос AND (AND spec IN (: input2)), запрос выглядит следующим образом

SELECT est FROM EstMast est, DisabEst dis WHERE est.estCode = dis.estCode AND est.esttypeCode =:input1 AND spec IN (:input2)

Как этого добиться, используя динамический запрос критерия гибернации?

ЧтоЯ пытался до сих пор :

Я начал использовать критерии.

Criteria accountCriteria = getCurrentSession().createCriteria(EstMast.class,"est");

Вот как я могу добавить вторую таблицу?

...