관리 메뉴

진취적 삶

JPA 와 Hibernate 본문

개발

JPA 와 Hibernate

hp0724 2024. 2. 28. 21:24

JPA

JAVA 진영에서 ORM 기술 표준으로 사용하는 인터페이스 모음

ORM : object releational mapping 으로 객체가 테이블이 되도록 매핑을 시켜주는것이다.

ORM을 이용하면 SQL Query가 아닌 직관적인 코드(메서드)로서 데이터를 조작할수 있다.

 

 

Hibernate

 

hibernate : 자바 언어를 위한 ORM 프레임워크 JPA의 구현체로 JPA 인터페이스를 구현하며, 내부적으로 JDBC API를 사용한다.

장점

생산성

  • hibernate 는 SQL 을 직접 사용하지 않고, 메서드 호출만으로 쿼리가 수행됨
  • 반복적인 CRUD 에 대해서 생산성이 향상된다.

유지보수

  • 테이블 컬럼이 변경되었을 때 , 테이블과 관련되 DAO의 파라미터, 결과 SQL 등을 대신 수행해준다.

패러다임 불일치 해결

  • 상속 , 연관 관계 ,객체 그래프 탐색등 객체와 관계형 DB와의 패러다임 불일치를 해결할수 있다.

단점

성능

  • 메서드 호출만으로 쿼리를 수행하는 것은 직접 SQL 을 작성하는 것보다는 성능이 좋지 않다.
  • 복잡한 통계 분석 쿼리를 메서드 호출로 처리하는 것은 힘든 일이다 그래서 JPQL을 사용한다.

'개발' 카테고리의 다른 글

QueryDSL  (0) 2024.02.28
JPA 단점과 JPQL  (0) 2024.02.28
docker 기반 nginx 를 이용한 로드 밸런싱  (1) 2024.01.24
docker를 이용한 3tier 구축하기 nginx ,tomcat,db  (1) 2024.01.18