Встречается на собеседованиях • сегодня
Как отладить HQL-запрос
Для отладки HQL-запросов можно использовать несколько подходов:
- Логирование SQL – включите логирование SQL в Hibernate:
properties
# Для Hibernate 5+
hibernate.show_sql=true
hibernate.format_sql=true
hibernate.use_sql_comments=true
# Для Spring Boot
logging.level.org.hibernate.SQL=DEBUG
logging.level.org.hibernate.type.descriptor.sql.BasicBinder=TRACE- Проверка синтаксиса – преобразуйте HQL в SQL для проверки:
java
QueryTranslatorFactory translatorFactory = new ASTQueryTranslatorFactory();
QueryTranslator translator = translatorFactory.createQueryTranslator(
hqlQuery, hqlQuery, Collections.emptyMap(), (SessionFactoryImplementor) sessionFactory);
translator.compile(Collections.emptyMap(), false);
String sql = translator.getSQLString();- Использование StatelessSession – для пошагового выполнения:
java
StatelessSession session = sessionFactory.openStatelessSession();
Query query = session.createQuery("FROM Entity WHERE field = :param");
query.setParameter("param", value);
List results = query.list();-
Тестирование в Hibernate Console – если используете IDE с Hibernate Tools.
-
Разбиение сложных запросов – выполняйте части запроса по отдельности.
Для параметризованных запросов всегда проверяйте правильность биндинга параметров.

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