Spring boot 2.0 과 Jpa2.2 그리고 Hibernate 5.2

오늘은 Spring boot2 기반으로 Jpa2.2 대해서 알아볼 예정이다. 실제 Spring boot 2.0은 기본적으로 하이버네이트 5.2를 지원한다. 그렇다고 해서 Spring boot 2.0 에 대해서 알아볼건 아니고 Spring boot 가 여러가지로 편해서 Spring boot 기반으로 작성할 예정이다. 만약 단독으로 Hibernate 를 사용한다면 여러 설정을 해야하므로 설정 관련은 따로 보는 것으 좋을 듯하다. 주로 JPA 2.2에 대해서 알아보도록 할 것이다. 시작해보자! 기본적으로 Spring boot 2.0은 Hibernate 5.2.16을 지원하고 있으며 (현재 이글을 쓰고 있을.. Read More

hibernate OneToOne lazy 구현하기

오늘이 시간에는 JPA OneToOne 관계에서 lazy 로딩 구현을 해보자. 일반적으로 JPA에서 OneToOne 관계는 Lazy로딩이 잘 동작하지 않는다. 물론 동작하게 만들 수는 있다. 여러 조건을 만족해야 하며 테이블 구조도 조금 달라 질 수 있다. 또한 OneToOne을 OneToMany로 바꾸어서 사용하는 방법도 존재한다. 위와 같이 여러 방법이 있겠지만 오늘 우리는 하이버네이트의 API를 이용해 OneToOne관계를 Lazy로딩이 가능하게 하도록 해보자. JPA의 구현체 중 하이버네이트는 OneToOne 관계에서도 Lazy로딩을 할 수 있다. 다른 여러 구현체들은 잘 쓰지.. Read More