본문 바로가기
  • soobinhand의 기술 블로그
Computer Science/JAVA

[JAVA] JPA와 Hibernate

by soobinhand 2022. 3. 5.
728x90

JPA가 무엇일까?

현재 자바의 ORM 기술 표준으로 사용되는 인터페이스 모음이다. 실제적으로 구현된 것이 아니라 구현된 클래스와 매핑을 해주기 위해 사용되는 것이다.

 

JPA를 사용하는 이유는 무엇일까?

SQL문이 아닌 메소드를 통해 DB를 조작할 수 있다. 물론 내부적으로 DB를 조작함. 근데 개발자가 이를 신경쓰지 않아도 된다.

객체지향적 코드 가능.

반복적인 CRUD를 처리해준다. 

그래도 JPA를 사용해서 얻는 가장 큰 이득은 SQL이 아닌 객체 중심으로 개발할 수 있다는 것임.

 

JPA 동작 방식

JPA는 어플리케이션과 JDBC 사이에서 동작함.

개발자가 JPA를 사용하면, JPA 내부에서 JDBC API를 사용해서 DB와 통신한다. 즉, 개발자가 직접 JDBC를 사용하는 것이 아니다.

 

Hibernate는 무엇일까?

JPA의 구현체 중 하나이다.

Hibernate는 SQL을 사용하지 않고 직관적인 코드를 사용해 데이터를 조작 가능.

JPA와 Hibernate는 마치 자바의 interface와 해당 interface를 구현한 class와 같은 관계.

 

Hibernate를 왜 사용하지?JPA와 비슷한 이유로 사용한다. 즉 반복적인 작업을 직접 하지 않음.

728x90

댓글