본문 바로가기
개발 개념/이론

[개발 개념] JPA를 왜 사용해야 하는가? (2)

by Yikanghee 2022. 2. 18.

JPA를 사용해야 하는 이유 2

  • 많은 SQL 매핑보다 JPA를 사용해야 하는 이유
    • JPA를 사용하면 자바 코드로 컬렉션에 저장하듯이 JPA에게 저장할 객체를 전달하면 된다
    • INSERT SQL를 작성하고 JDBC API를 사용하는 지루하고 반복적인 작업을 JPA가 대신해준다 따라서 지루하고 반복적인 코드와 CRUD용 SQL을 개발자가 직접 작성하지 않아도 되는 장점이 있다
    • 개발을 할 때 SQL를 직접 다루면 엔티티에 필드를 하나만 추가해도 관련된 등록, 수정, 조회 SQL과 결과를 매핑하기 위한 JDBC API코드를 모두 변경해야 한다
    • 이런 과정을 JPA가 대신 처리해준다
    • JPA는 애플리케이션과 데이터베이스 사이에서 다양한 성능 최적화 기능을 제공한다
    • JPA는 애플리케이션과 데이터베이스 사이에서 동작하는데 이렇게 어플리케이션과 데이터베이스 사이에 계층이 하나 더 있으면 최적화 관점에서 좋은 퍼포먼스를 보여준다
  • ORM 프레임워크를 사용하면 SQL과 데이터베이스는 안 배워도 되는가?
    • 아니다. ORM 프레임워크가 애플리케이션을 객체지향적으로 개발할 수 있도록 도와주지만 최종적으로 데이터는 데이터베이스에 저장이 된다
    • 테이블 설계가 개발 부문에서 굉장히 중요하고, SQL도 잘 알아야 된다
    • 결국 CRUD를 개발하는 단순한 작업은 ORM 프레임워크로 하는 것이 효과적이고, 복잡한 쿼리문은 SQL을 사용하는 것이 더 효과적일 수 있다
    • 그럼에도 불구하고 ORM 프레임워크에서 주는 유지보수, 생산성이 굉장히 큰 메리트임을 부정할 수 없다
    • 따라서 SQL과 프레임워크 둘 다 잘 알고 있는 것이 좋은 개발을 할 수 있는 방법이다
      이 글은 김영한 님의 자바 ORM 표준 JPA 프로그래밍을 보고 공부했습니다

댓글