Встречается на собеседованиях • сегодня
Какая дифференцировать с помощью Criteria API
Criteria API в Java позволяет строить типизированные запросы к БД программно, без использования строк. Основные отличия от JPQL/HQL:
1. **Типобезопасность** - ошибки выявляются на этапе компиляции
2. **Программное построение** - динамические запросы проще
3. **Объектно-ориентированный подход**
Пример базового запроса:
```java
CriteriaBuilder cb = em.getCriteriaBuilder();
CriteriaQuery cq = cb.createQuery(Employee.class);
Root emp = cq.from(Employee.class);
cq.select(emp).where(cb.gt(emp.get("salary"), 1000));
List results = em.createQuery(cq).getResultList();
```
Ключевые преимущества:
- Лучше для сложных динамических запросов
- Нет риска SQL-инъекций
- Поддержка метамодели (type-safe) через аннотацию @StaticMetamodel

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