2016-09-05 2 views
1

У меня есть приложение, которое использует JdbcTemplate для выполнения запросов в базе данных MySQL. Если JdbcTemplate когда-либо выдает org.springframework.dao.DataAccessException, он регистрирует трассировку стека исключений. Тем не менее, я также хотел бы включить SQL-запрос, вызвавший исключение исключения. Есть ли простой способ сделать это, что не требует написания пользовательских сообщений об ошибках для каждого места? Используется JdbcTemplate?Возможно ли получить запрос SQL, вызывающий исключение SpringAccessException?

ответ

1

Если вы только планируете регистрировать SQL-запросы во время исключения, возможно, вам придется написать свой собственный подкласс JdbcTemplate и изменить предварительные условия ведения журнала, как показано в исходном коде, по адресу Github.

Если это не так, вы можете рассмотреть следующее.

Из Spring documentation Все SQL-запросы регистрируются на уровне DEBUG.

Все SQL выдан этот класс регистрируется на уровне DEBUG под категорией, соответствующей полное имя класса экземпляра шаблона (обычно JdbcTemplate, но оно может отличаться, если вы используете пользовательский подкласс Класс JdbcTemplate).

Вы также изменяются в JDBC-URL, установив profileSQL в true проследить SQL.

MySQl Connection Reference Documentation

+0

я не знаю, что они были DEBUG вошли, спасибо за то, что :) – Jordan

+0

Нет проблем мате, не отметить это как ответ, если это полезно. Приветствия. –

Смежные вопросы