Как получить идентификатор с отображением столбца в построителе критериев - PullRequest
0 голосов
/ 28 марта 2020

У меня есть одна таблица, которая является именем на ассоциации, и таблица имеет 3 столбца, который является id, настройки, создание. Настройки сопоставляются с помощью Set, а создание сопоставляется с созданием в классе Entity. Set содержит set_id, set_edit, а create содержит create_id и create_name.

Когда я задаю запрос sql, он будет хорошо выполнять результат. "SELECT count (create_id) FROM association где set_id = X'143d3149791c4dd7b4ae08a7074c69d2 '"

, но как использовать построитель критериев в спящем режиме.

На самом деле, что я хочу, означает передать параметр из set_id для поиска в БД и получения связанного счетчика create_id с таблицей ассоциаций, но он сопоставляет креативу то, как получить create_id в построителе критериев с помощью весенней загрузки

1 Ответ

0 голосов
/ 07 апреля 2020
    Session session = sessionFactory.getCurrentSession();
    CriteriaBuilder builder = session.getCriteriaBuilder();
    CriteriaQuery<AdGroupCreativeAssociation> query = builder.createQuery(AdGroupCreativeAssociation.class);
    Root<AdGroupCreativeAssociation> root = query.from(AdGroupCreativeAssociation.class);
    query.select(root.get("id"));
    TypedQuery<AdGroupCreativeAssociation> q = session.createQuery(query);
    List<AdGroupCreativeAssociation> list =  q.getResultList().stream().filter(
            i -> ((i.getAdsets().getAdsetId().compareTo(adsetId) == 0)
                    && (i.getCreative().getCreativeid()
                            .compareTo(creativeId) == 0)))
            .collect(Collectors.toList());
    List<UUID> resultList = list.stream().map(i -> i.getId()).collect(Collectors.toList());
    return resultList;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...