반응형
자바에서 SQL을 화면에 보여주거나 출력을 하는데,
저장해둔 값이나 특별한 설정에 따라
엔터가 두번 들어가던가, 들여쓰기가 안맞는 이상한 상황이 발생한다.
그럴경우엔
import org.hibernate.engine.jdbc.internal.FormatStyle;
에서 제공하는 기능을 사용하면 된다.
기본 문법은 아래와 같다.
FormatStyle.BASIC.getFormatter().format(sqlText);
사용 예시는 아래 이미지와 같다.
String sqlA = """ SELECT * FROM TABLE WHERE a=1 ; """; System.out.println(sqlA); String sqlB = FormatStyle.BASIC.getFormatter().format(sqlA); System.out.println(sqlB); |
우선 sqlA 를 보면 줄바꿈이 두개도 있고, 불필요한 공백도 있다.
FormatStyle을 적용시킨 sqlB도 있다.
둘의 결과는 아래와 같다.
sqlA | SELECT * FROM TABLE WHERE a=1 ; |
sqlB | SELECT * FROM TABLE; WHERE a=1 ; |
A는 있는 그대로 보이고
B는 정형화된 공백으로 출력이 되서
python의 pprint기능과 비슷한 느낌이다.(참고 포스팅 참고)
참고 포스팅
https://thenicesj.tistory.com/316
반응형
'IT > Java' 카테고리의 다른 글
[Error] Caused by: java.lang.NoClassDefFoundError: javax/persistence/Entity maven (23) | 2024.06.09 |
---|---|
[Error] Attempt to recreate a file for type QClass 파일 (21) | 2024.06.08 |
Java 에서 Bcrypt 사용 (7) | 2024.06.05 |
Java 에서 SHA 256 암호화 사용하기 (12) | 2024.06.04 |
Spring Batch (part 4. 프로젝트 적용 - Tasklet 방식) (21) | 2024.06.03 |
댓글