[SQL] 어떻게 봄 부팅 프로젝트에 SQL 쿼리, Log4jdbc과의 매개 변수 및 결과를 기록하려면?
SQL어떻게 봄 부팅 프로젝트에 SQL 쿼리, Log4jdbc과의 매개 변수 및 결과를 기록하려면?
SQL은 DB로 전송 쿼리하여 보려면 우리는 일반적으로 showSql 매개 변수를 사용합니다 :
spring.jpa.showSql=true
그것은 문 본체가 아니라 매개 변수를 볼 수있게 해준다 :
insert into master (id, version, name) values (null, ?, ?)
그리고 특히 우리는 쿼리의 결과가 표시되지 않습니다.
응용 프로그램 로그에 SQL 문, 매개 변수 및 결과를 볼 수있는 방법이 있습니까?
해결법
-
==============================
1.log4jdbc 스프링 부팅-선발로 우리는 쉽게 모든 JDBC 문, 봄 부팅 / 스프링 데이터 JPA 프로젝트에서의 매개 변수와 결과를 기록 할 수 있습니다.
log4jdbc 스프링 부팅-선발로 우리는 쉽게 모든 JDBC 문, 봄 부팅 / 스프링 데이터 JPA 프로젝트에서의 매개 변수와 결과를 기록 할 수 있습니다.
예를 들어, 우리는 우리의 응용 프로그램에서 일부 JPQL 쿼리를 수행 할 때 :
select u from User u where u.name = 'john'
우리는 응용 프로그램 로그에서의 매개 변수를 사용하여 다음과 같은 SQL 쿼리를 참조하십시오
select ... from users users0_ where users0_.name='john'
그리고 테이블 형태의 결과 :
|---|---------| |id |name | |---|---------| |1 |john | |---|---------|
이 스타터를 사용하려면 우리는 우리의 프로젝트에 대한 의존도를 추가해야합니다 :
<dependency> <groupId>com.integralblue</groupId> <artifactId>log4jdbc-spring-boot-starter</artifactId> <version>1.0.2</version> </dependency>
이러한 매개 변수를 application.properties에 추가
logging.level.jdbc.resultsettable=info logging.level.jdbc.sqltiming=info logging.level.jdbc.sqlonly=fatal logging.level.jdbc.audit=fatal logging.level.jdbc.resultset=fatal logging.level.jdbc.connection=fatal
또한, 우리는 한 줄에 출력을 얻기 위해이 log4jdbc 매개 변수를 추가 할 수 있습니다 :
log4jdbc.dump.sql.addsemicolon=true log4jdbc.dump.sql.maxlinelength=0 log4jdbc.trim.sql.extrablanklines=false
from https://stackoverflow.com/questions/45346905/how-to-log-sql-queries-their-parameters-and-results-with-log4jdbc-in-spring-boo by cc-by-sa and MIT license
'SQL' 카테고리의 다른 글
[SQL] 잡을 치명적인 오류 : 클래스 mysqli_stmt의 객체는 문자열로 변환 할 수 없습니다 (0) | 2020.07.17 |
---|---|
[SQL] SQL 서버 : 대신 DELETE CASCADE ON의 자기 참조 FK, 트리거 (0) | 2020.07.17 |
[SQL] 필드에 외부 키를 리팩토링 (0) | 2020.07.17 |
[SQL] TO_CHAR () 출력에서 빈 패딩을 제거 (0) | 2020.07.17 |
[SQL] 생년월일에 제약 조건을 확인? (0) | 2020.07.17 |