본문 바로가기
Spring

Spring Day 6 : JPA

by 우 석 2024. 1. 25.

DB를 직접 다룰 때의 문제점

  • 직접 DB로 접속해서 SQL을 호출해야 하며, SQL을 JDBC를 사용해서 직접 실행해줘야 합니다.
  • 또한 SQL 결과를 객체로 직접 만들어줘야 합니다.
  • 데이터에 새로운 항목을 추가해야 할 경우 SQL을 직접 수정해야 합니다. -> SQL 의존적이라 변경에 취약 

 

JPA  ( Java Persistence API )

 

자바 애플리케이션과 데이터베이스를 연결하여 데이터를 다루는 기술입니다. JPA는 객체와 관계형 데이터베이스 간의 매핑을 처리하고, 데이터베이스에 대한 CRUD(Create, Read, Update, Delete) 작업을 추상화한 인터페이스를 제공합니다.

  • JPA를 사용하면 DB 연결 과정을 직접 개발하지 않아도 객체와 데이터베이스 간의 매핑 작업을 자동으로 처리해 줍니다.
  • 또한 객체를 통해 간접적으로 DB 데이터를 다룰 수 있기 때문에 매우 쉽게 DB 작업을 처리할 수 있습니다.
  • SQL 쿼리를 직접 작성하지 않고도 객체를 사용하여 데이터를 조작할 수 있습니다. 

 

ORM : Object-Relational Mapping

  • 객체와 DB의 관계를 매핑해주는 도구입니다.
  • JPA는 Java ORM 기술의 대표적인 표준 명세이며, 애플리케이션과 JDBC 사이에서 동작되고 있습니다.

 

Hibernate 

  • JPA  표준 명세이고, 이를 실제 구현한 프레임워크 중 사실상 표준이 하이버네이트입니다. 
  • Hibernate는 JPA의 표준 명세를 구현한 오픈 소스 프레임워크로, JPA를 사용하여 개발할 때 자주 활용됩니다.

'Spring' 카테고리의 다른 글

Spring Day 8 : Dirty Checking  (0) 2024.01.29
Spring Day 7 : 영속성 콘텍스트  (0) 2024.01.26
Spring Day 5 : IoC(제어의 역전)과 DI(의존성 주입)  (0) 2024.01.24
Spring Day 4 : 3 Layer Architecture  (1) 2024.01.23
Spring Day 3 : MVC  (0) 2024.01.22