[Spring Boot] JPA vs JDBC

MyungHwan Kim·2022년 10월 18일
1

SpringBoot

목록 보기
2/2
post-thumbnail

1. JPA

JPA : Java Persistent API

  • JPA는 ORM(Object Relation Mapping)의 한 종류(=Java용 ORM)
  • JDBC와 달리 객체와 테이블 사이의 정보만 알려주면 쿼리를 다 짜준다.
  • 쿼리를 직접 짜지 않다보니 반복적인 코드가 필요없게 된다.
  • 그리고 Back-end 개발자 입장에서는 sql 쿼리 자체에 집중해서 짜는 것이 아니라 Java 에 객체의 중심으로 코딩을 하게 된다.
  • 쿼리문이 한줄도 들어가지 않고 Java의 함수만 자연스럽게 사용하면 모든 데이터 저장과 조회, 삭제, 업데이트 등이 가능하게 된다.
  • 그러므로 개발 생산성이 높아진다.

  • public interface JpaMemoRepository extends JpaRepository<클래스명, 클래스의 key형태>

2. JDBC

JDBC : Java Database Connectivity

  • JDBC는 SQL Mapper의 한 종류
  • Java DB를 연결해주는 것
  • Applcation과 DB 사이에 JDBC가 존재
  • JDBC는 쿼리를 가지고 Applcation과 Persistence Layer 사이를 Mapping
  • Java에서 DB를 사용할 수 있도록 제공해주는 거의 최소한의 API
  • 쿼리를 직접 짜야한다.

3. 정리

  • 위 Jpa와 JDBC 코드를 보면 확실히 코드량의 차이를 알 수 있다.
  • Jpa는 위 JDBC 코드에 있는 메서드들이 기본적으로 다 구현이 되어 있는 상태이다.
profile
Back-end 개발자가 되기 위한 개발 노트(Java)

0개의 댓글