development/spring 13

QueryDSL - Introduction / Join / Dynamic Query

안녕하세요. 복실복실 개발자입니다. 업무와 자격증시험 준비를 병행하다보니 포스팅이 많이 늦어졌습니다.. 올해에는 SQLD와 SAA를 취득하려고 합니다. 공부하면서 필요한 내용은 추후 포스팅해보도록 하겠습니다. 이번 글에서는 JPA의 QueryDSL을 실제로 활용해보도록 하겠습니다. QueryDSL과 JPQL에 대해 사전 지식이 필요하신 분은 이 글 을 참고해주세요. 1. QueryDSL을 활용한 기본 Select 2. 일대 다 관계의 엔티티 Join - @QueryProjection을 활용한 DTO 바인딩 3. BooleanBuilder / BooleanExpression을 활용한 Dynamic Query 1. QueryDSL을 활용한 기본 Select 우선 QueryDSL을 사용하기 위해 JPAQuer..

development/spring 2023.02.15

JPA - JPQL과 QueryDSL 활용

안녕하세요 복실복실 개발자입니다. 지난 포스팅에 이어 이번 글에서도 JPA를 주제로 이야기를 해보려 합니다. 앞선 글에서 언급하였던 것처럼 JPA-Hibernate 기반의 ORM 기술을 활용한 개발 방식에서는 .xml 파일에 직접 쿼리문을 작성하지 않고 객체를 바탕으로 데이터를 제어할 수 있습니다. 주로 사용되는 두 가지 방식에 대해서 살펴보도록 하겠습니다. 1. @Query 어노테이션을 활용한 JPQL - 객체지향 쿼리언어 2. queryDSL - JPA에서 기본으로 제공하는 JPQL을 정적인 형태의 코드로 작성할 수 있도록 기능을 제공하는 프레임워크 1. @Query 어노테이션을 활용한 JPQL - 객체지향 쿼리언어 JPQL은 JPA의 일부로서, 테이블이 아닌 객체(엔티티 - @Entity)를 대상으..

development/spring 2023.01.31

JPA를 활용한 기본 CRUD 구현

안녕하세요 복실복실 개발자 입니다. 이번 포스팅에서는 Persistence Framework 중 ORM(Object Relational Mapping)을 활용한 기술인 JPA-Hibernate 에 대해 살펴보려고 합니다. 그 동안 개인적인 공부나 업무에서 SQL mapper 기술인 mybatis를 기반으로 개발을 진행해왔었는데, 통계적으로 최근 트랜드를 살펴보면 mybatis보다 JPA를 사용하는 비중이 높아지고 있다는 소식을 보고 이번 기회에 혼자 공부를 진행하며 그 내용을 정리해보고자 합니다. *Persistence Framework란? 데이터베이스와 연동되는 시스템을 빠르게 개발하고 안정적으로 구동할 수 있도록 하는 프레임워크로 크게 SQL mapper와 ORM이 있습니다. SQL mapper: s..

development/spring 2023.01.28