Spring13 QueryDsl의 Projections 활용 QueryDsl의 Projections 활용Projections는 QueryDsl에서 제공하는 쿼리 결과의 dto 매핑을 위한 기능입니다.불필요한 컬럼의 조회를 방지해 쿼리 조회시 발생하는 통신 비용을 줄일 수 있습니다.Projections에는 다음과 같은 네 가지 방법이 있습니다. 저희 조는 그 중에서도 @QueryProjection 을 활용해보았습니다.@QueryProjectionProjections.bean(..)Projections.field(..)Projections.construct(..)@QueryProjectionDto 생성자에 @QueryProjection 어노테이션을 붙여, Q-Type 클래스를 만들어 사용하는 방법입니다.컴파일 시점에 에러를 잡아낼 수 있어 안전하다는 장점이 있습니다... 2025. 2. 26. 스프링 로깅 Spring Logging 로깅은 프로그램 동작 시 발생하는 모든 일(서비스 동작 상태 및 장애)을 기록하는 행위를 말하며, 이를 통해 애플리케이션의 동작을 이해하고 모니터링하는 데 도움이 됩니다.System.out.println() 사용 지양System.out.println() 등의 코드 내부 구현을 살펴보면, 메소드 내 부분적으로 synchronized 키워드가 붙어 있어 임계 영역이 존재합니다. 이로 인해 멀티 스레드 환경에서 동작할 때, 성능 측면에서 좋지 못한 영향을 끼칠 수 있습니다.로깅 프레임워크(Logging Framework)SLF4J, Logback 과 같은 로깅 프레임워크를 통해 로깅을 수행합니다. 해당 프레임 워크에서는 6가지 레벨로 로그를 나누어 관리할 수 있도록 돕습니다.로그 레벨Fatal : 매우 심각한.. 2025. 2. 24. [Jpa/QueryDsl] QueryDsl 설정 및 조회 기능 구현 (+동적 정렬) querydsl을 활용한 기본적인 조회 기능 구현에 대해서 기록해보고자 한다.이전에 한 번 업무에서 querydsl을 간단히 다루는 경험을 한 적이 있는데, 그게 벌써 약 2년 전 일이 되었다.그런 만큼, querydsl 활용이 조금 걱정되었는데, 다행히 전에 구현했던 기억이 조금은 남아 있어서 + 간단한 조회 기능이라 수월하게 작업을 해보았다. Springboot 버전 3이 되면서 querydsl 연동도 간결해져서 작업하는데 수월했다.QueryDsl정적 타입을 이용해 sql 과 같은 쿼리를 생성할 수 있도록 도와주는 오픈소스 프레임워크쿼리를 문자열로 작성하는 것이 아닌 프레임워크에서 제공하는 API를 활용해 코드 형태로 작성해 쿼리를 생성해주므로, 타입 안정성이 보장되고 런타임 에러를 방지할 수 있다... 2025. 2. 16. [Springboot]@WebMvcTest 사용 중 security csrf 오류 해결 0. @WebMvcTest 란? @WebMvcTest 는 웹(컨트롤러) 레이어에서의 테스트를 수행할 수 있도록 돕는 어노테이션입니다. presentation, web 레이어 관련 빈들만 로드(등록)하여 테스트를 수행하므로 @SpringBootTest에 비해 속도가 한결 빠릅니다. 관련 글 참고 : https://github.com/HanaHww2/WIL/blob/main/Spring/test-annotation.md 1. 빈 생성 오류 발생시 해결 방안 그러나 이런 특성으로 인해서 security를 활용하는 경우, 특정 빈들이 로드되지 않아 빈 생성 오류가 발생하기도 합니다. 저의 경우에는 토큰 파싱을 수행하는 필터 클래스와 관련된 빈들이 말썽이었고, 웹 레이어 테스트 수행에서 해당 필터의 기능이 테스트.. 2023. 11. 26. 이전 1 2 3 4 다음