본문 바로가기

Spring

DB 접근 기술

반응형

JDBC

  • 자바에서 제공하는 기능으로 DB에 접근할 수 있도록 API를 제공한다
  • Connection, PreparedStatement 등 직접 선언하여 코드를 구성해야 한다.
  • SQL도 로직에서 직접 작성해야 한다
  • 반복되는 코드가 많고 사용하기 어려움이 많다.

JDBC Template

  • JDBC의 반복 코드를 제거해주나, SQL은 직접 작성해야한다

JDBC와 JDBC Template은 DataSource 객체가 필요한데 이것은 Bean으로 등록하지 않아도 컨테이너에서 자동으로 관리하며 주입해준다.

JPA

  • SQL을 직접 작성할 필요없이 자바 코드로 대체할 수 있다
  • ORM을 제공하며 모델에는 @Entity 어노테이션이 필요하다.
  • EntityManager를 통해 쿼리 요청을 수행한다.

스프링 데이터 JPA

  • JPA를 한층 더 편리하게 해주는 기술로 인터페이스만으로 repository 역할 수행이 가능하다
  • 즉 findById, save 등에 대한 구현없이 그냥 JpaRepository를 상속받아 선언하는 것 만으로 사용이 가능하다.
  • JpaRepository를 상속받으므로 스프링 컨테이너에서 알아서 Bean으로 등록한다.
반응형

'Spring' 카테고리의 다른 글

스프링 컨테이너 ApplicationContext  (0) 2023.08.02
OCP 적용 DI 구조  (0) 2023.07.29
Spring boot traffic 제어 + redirect  (0) 2021.09.02
Sentry + Spring Boot (monitoring tool)  (0) 2021.08.31
Spring 에러 전역 처리  (0) 2021.08.31