객체를 관계형 데이터베이스에 저장하려면 개발자는 많은 코드와 SQL을 작성해야 합니다. 객체를 SQL로 변환하는 단순한 일부터, 객체의 상속 구조를 테이블에 저장하는 복잡한 일까지, 개발자는 객체와 데이터베이스 사이에서 무수한 매핑 코드와 SQL을 직접 작성해야 합니다. 자바 ORM 표준인 JPA는 SQL 작성 없이 객체를 데이터베이스에 직접 저장할 수 있게 도와주고, 객체와 관계형 데이터베이스의 차이도 중간에서 해결합니다.
기초를 탄탄하게 해서 실무에서 JPA를 사용하더라도 두려움 없이 사용할 수 있게 해드리는 것이 이 강의의 목표입니다.
스프링 부트는 복잡하고 어려운 스프링 프레임워크를 간결하고, 쉽게 사용할 수 있게 도와줍니다. 여기에 JPA가 제공하는 강력한 ORM 기술을 더하면, 높은 생산성을 유지하면서 민첩하게 웹 애플리케이션을 개발할 수 있습니다. 이런 점들 때문에 자바 진영에서는 스프링 부트와 JPA를 활용해서 웹 애플리케이션을 개발하는 것이 세계적인 추세입니다.
이 강의는 대부분 실습으로 이루어져 있습니다. 따라서 처음부터 끝까지 본인이 직접 코딩을 하면서 강의를 따라가야 가장 많은 것을 얻을 수 있습니다.
1편에서는 웹 애플리케이션을 개발하면서 기능 구현에 초점을 맞추었다면, 2편은 기능 개발을 넘어서 기술 문제를 해결하는데 초점을 맞추었습니다. 기능을 제대로 구현하는 방법은 무엇인지, 실무에서 주로 어떤 성능 문제가 발생하고 이를 어떻게 해결해야 하는지를 알아보며 기술 문제를 해결할 수 있게 도와드립니다.
여러분도 이 강의에서 설명하는 내용을 이해하면 90%의 JPA 실무 성능 문제를 해결할 수 있습니다.
스프링 부트와 JPA라는 기반 위에 스프링 데이터 JPA라는 환상적인 프레임워크를 더하면 개발이 정말 즐거워집니다. 지금까지 조금이라도 단순하고 반복적이라 생각했던 개발 코드들이 확연하게 줄어듭니다. 따라서 개발자는 핵심 비즈니스 로직을 개발하는데, 집중할 수 있게 됩니다.
실무에서 관계형 데이터베이스를 사용한다면 스프링 데이터 JPA는 선택이 아니라 필수입니다.
실무에서 스프링 데이터 JPA를 어떻게 활용하면 좋은지 생생한 실무 노하우들을 전해드립니다.
최신 자바 백엔드는 주로 스프링 부트와 JPA, 스프링 데이터 JPA를 조합해서 사용합니다. 그런데 이런 조합으로 해결하지 못하는 한계점이 바로 복잡한 쿼리와 동적 쿼리 문제입니다.
이러한 문제들을 깔끔하게 해결해주는 기술이 바로 Querydsl 입니다.
복잡한 실무에서 스프링 데이터 JPA와 Querydsl의 조합은 선택이 아니라 필수입니다.
이 강의에서는 Querydsl의 완전 기초부터 다양한 실무 프로젝트에서 쌓은 노하우들을 까지 Querydsl에 관한 모든 내용을 전달해 드립니다.