JPA

A collection of 5 posts
JAVA

Spring Data JPA 3부터 바뀐 SEQUENCE(시퀀스) 기본키 생성 전략

마이그레이션을 진행합니다... 안되잖아? Spring Boot 3이 공식적으로 배포되기 시작하면서, 이 참에 2.7.X 버전으로 개발중이던 프로젝트를 3.0.0으로 업그레이드 했다. 마이그레이션을 진행 하면서, 하나하나 발생한 문제를 손수 뜯어 고치고 프로젝트를 실행 했더니 이게웬걸! 뜬금없이 JPA 쪽에서 문제가 발생했다. 알고보니 기존의 Spring Data JPA 2에서 Hibernate 5를 사용하다 Spring
3 min read
JAVA

Spring Data JPA에서 Specification으로 엔티티 JOIN하기

엔티티 쪼개기 혹시나 정보처리기사 자격증을 땄거나 혹은 따기 위해 정보처리기사 공부를 했다면 알고 있겠지만, 관계형 데이터베이스는 정규화라는 과정을 거치면서 데이터의 중복을 제거해 나간다. 이 과정에서 중복된 데이터는 중복을 제거한 뒤 다른 테이블로 쪼개지고, 기존 테이블의 컬럼 값은 FK(이하 외래 키)로 대체된다. [JPA] 스프링 데이터 JPA에서 Specification으로 동적 WHERE절
9 min read
JAVA

객체지향 쿼리 언어 (JPQL)

JPQL(Java Persistence Query Language) 이란? 지난 [JPA] 스프링 데이터 JPA에서 Specification으로 동적 WHERE절 구현하기 (1) 글에서 'JPA에서 사용하는 SQL과 비슷한 언어라고 만 생각하면 될 것 같다.' 라고 남겨 놨었는데, 사실 Specification을 제대로 쓰기 위해선 JPQL을 먼저 알아야 한다. JPA는 기존의 SQL 중심적인 개발을 타파하고 엔티티라는 객체를 중심으로
9 min read
JAVA

스프링 데이터 JPA에서 Specification으로 동적 WHERE절 구현하기

책 조회를 위해서는 동적 WHERE절 기능을 구현해야 할 것 같은데... 개인적으로 진행했던 도서 장부 프로젝트에서 외부에서 입력 받은 조회 조건들의 존재 여부에 따라 동적으로 WHERE절을 생성할 필요가 있었다. -- 이해를 돕기위해 간략화 된 책 조회 쿼리입니다 SELECT * FROM BOOK WHERE TITLE = '제목' AND AUTHOR_NAME = '저자명'
10 min read