(리뷰) 자바 ORM 표준 JPA 프로그래밍
저자는 김영한 개발자(우아한 형제들)님이고, 에이콘 출판사에서 2015년 7월에 출간된 책이다.
개인적으로 이 책을 읽으면서 좋았던 점?과 후기를 남기려고 한다.
먼저, 이 책에 대해 간략히 소개하자면, 기존 JDBC 방식 또는 Mybatis 프레임워크를 활용한 데이터베이스에 의존적인 개발 방식에서 ORM(Object Relational Mapping)의 자바 진영 표준 API인 JPA에 대해서 설명하는 책이다.
책의 가장 좋았던 부분을 얘기하자면, 개인적으로는 ORM을 몰랐고 JPA를 몰랐던 나이기에, 소개 부분이 가장 좋았던 것 같다.
왜냐하면 기존에 개발 방식이었던 Mybatis와 JDBC방식은 너무 불편했고, 비 생산적이며, 비즈니스 로직에 집중할 수 없었다는 점이 있었다. 그런 불편점들을 소개 부분에서 설명해주며 공감할 수 있었고, ORM 기반의 JPA가 어떤 방식으로 객체지향적인 개발을 돕는지를 설명하는 내용이었기 때문에 굉장히 잘 이해가 되었던 것 같다.
또한 이 책은 실제로 JPA를 통해서 최적화할 수 있는 부분이나, 발생하는 문제점들에 대해서도 상세하게 설명해주고 해결 방안까지 제시하고 있기 때문에 다른 책들과 다르게 좀 더 좋았던 것 같다.
예를 들면 JPA를 사용하면서 가장 많이 발생하는 N+1이라는 문제가 있다.
N+1문제란 Lazy Loading(지연 로딩)을 사용해서 select 쿼리를 조회할 때 추가 쿼리가 발생하는 문제인데, 이 문제에 대한 해결 방법도 여러가지로 알려주고 있어서 굉장히 좋았던 것 같다.
추후에 N+1 문제를 야기시킨 후 코드로 어떻게 해결할 수 있는지 포스팅 해보도록 하겠다.