JPA, Hibernate, Spring Data JPA란?
Spring Boot에서 SQL을 직접 사용하는 것은 단점이 존재한다. SQL을 작성하기 때문에 실수할 수 있고, 실수 인지 시점이 느리다. 컴파일 에러가 안나고, 런타임 오류가 나기 때문이다. 즉, 서버 동작에는 SQL문의 오타는 아무런 지장이 없기 떄문이다. 특정 데이터베이스에 종속적이게 된다. 반복작업이 많아진다. 데이터베이스의 테이블과 객체는 패러다임이 다르다 ( 상속, 연관관계 등) => 이를 해결하기 위해 만든것이 JPA다. JPA? Java Persistence API의 약자로 자바 진영의 ORM이다. Persistence : 영속성, 서버가 재시작되어도 데이터는 영구적으로 저장되는 속성 (데이터베이스 등) ORM? Object-Relational Mapping, 즉 자바 클래스(객체)와 테..