Встречается на собеседованиях • сегодня
Есть ли опыт в работе с Criteria API
Да, есть. Criteria API в JPA позволяет строить динамические запросы типобезопасным способом, избегая строковых конкатенаций в JPQL. Особенно полезен для сложных запросов с переменными условиями.
Пример поиска пользователей по имени и возрасту:
```java
CriteriaBuilder cb = entityManager.getCriteriaBuilder();
CriteriaQuery query = cb.createQuery(User.class);
Root user = query.from(User.class);
List predicates = new ArrayList<>();
if (name != null) {
predicates.add(cb.equal(user.get("name"), name));
}
if (minAge != null) {
predicates.add(cb.ge(user.get("age"), minAge));
}
query.where(predicates.toArray(new Predicate[0]));
return entityManager.createQuery(query).getResultList();
```
Плюсы: типобезопасность, гибкость, возможность построения сложных запросов. Минусы: более многословный синтаксис по сравнению с JPQL.

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы