Framework

·Framework/JPA
개요데이터베이스를 사용하다 보면 자주 마주치는 "Dialect(방언)"이라는 용어가 있습니다. JPA를 사용할 때 특히 중요한 개념인데, 이것이 무엇이고 왜 필요한지 자세히 알아보겠습니다. 방언(Dialect)이란❓ Dialect의 사전적 의미는 '방언' 또는 '사투리'입니다. 이는 같은 언어라도 지역마다 다른 표현이나 억양을 사용하는 것을 의미하는데, 데이터베이스 세계에서도 이와 유사한 개념이 존재합니다. SQL 표준이라는 공통된 언어가 있지만, Oracle, MySQL, PostgreSQL 등 데이터베이스 벤더사마다 각자의 '방언'처럼 문법이나 함수가 조금씩 다르게 구현되어 있습니다. 벤더❓: 제품이나 서비스를 판매하는 회사나 공급업체를 의미합니다.데이터베이스 컨텍스트에서 벤더는 데이터베이스 관리 시..
개요Spring Boot 애플리케이션에서 DTO(Data Transfer Object)와 Entity 간의 변환은 시스템 설계와 아키텍처에서 중요한 결정 사항 중 하나입니다.  DTO는 주로 클라이언트와의 데이터 교환을 목적으로 하고, Entity는 데이터베이스와 상호작용하는 도메인 객체로 사용됩니다. 이 두 가지 객체의 변환은 애플리케이션의 데이터 흐름에서 필수적인 과정이지만, 변환을 어디에서 수행할지에 따라 코드의 가독성, 유지보수성, 그리고 성능에 큰 영향을 미칩니다.  이 블로그 포스트에서는 DTO와 Entity 간 변환을 어느 Layer에서 수행하는 것이 가장 적절한지 살펴보겠습니다.  DTO를 사용하는 이유는❓Entity는 종종 민감한 정보나 불필요한 정보를 포함하고 있습니다. DTO를 사용하..
·Framework/JPA
개요프로젝트를 진행하던 중, QueryDSL을 사용해 동적 쿼리를 작성하면서 DTO 매핑 과정에서 필드 순서가 잘못되어 한동안 디버깅에 어려움을 겪었습니다. 본 글에서는 이러한 실수를 방지할 수 있는 @QueryProjection 어노테이션에 대해 학습한 내용을 정리하고자 합니다. @QueryProjction어노테이션이란❓@QueryProjection 어노테이션은 QueryDSL을 사용한 동적 쿼리 작성 시 DTO에 타입 안전한 방식으로 값을 매핑할 수 있도록 도와주는 기능입니다. QueryDSL은 Java에서 SQL과 같은 쿼리를 타입 안전하게 작성할 수 있게 해주는 라이브러리로, 주로 Spring Data JPA와 함께 사용되며 복잡한 동적 쿼리를 작성할 때 유용합니다. @QueryProjction ..
·Framework/JPA
JPA를 사용하다 보면 대부분은 엔티티 객체를 통해 데이터를 다루지만, 가끔 직접적인 쿼리를 작성해야 할 때가 있습니다. 특히, 데이터를 삽입, 수정, 삭제하는 쿼리는 엔티티만으로 처리하기 어려운 경우가 발생할 수 있습니다. 이럴 때 Spring Data JPA에서 제공하는 @Modifying 어노테이션을 사용하면, 데이터를 수정하거나 삭제하는 쿼리를 안전하고 간편하게 실행할 수 있습니다. 이번 글에서는 @Modifying 애너테이션의 개념과 활용 방법에 대해 알아보겠습니다. @Modifying 어노테이션이란❓@Modifying 어노테이션은 Spring Data JPA에서 데이터베이스 조작(수정, 삭제, 삽입) 쿼리를 실행할 때 사용하는 어노테이션입니다. @Modifying 어노테이션의 역할@Modify..
지누박
'Framework' 카테고리의 글 목록