개발지식/BE(Back-End)
Spring Framework - Repository의 역할
coon94
2023. 4. 1. 10:47
Repository란?
Repository는 데이터베이스와의 연동을 추상화하고,
ORM 기능을 제공하여 객체와 데이터베이스 테이블 간의 매핑을 자동화한다.
Repository의 특징
데이터베이스와의 연동을 추상화
Repository는 데이터베이스와의 연동을 추상화하여, 데이터베이스의 종류나 구조의 변화에 대한 유연성을 제공한다.
ORM(Object-Relational Mapping) 기능 제공
Repository는 ORM 기능을 제공하여, 객체와 데이터베이스 테이블 간의 매핑을 자동화한다. 이를 통해 개발자는 SQL문 작성이나 데이터베이스 접근 로직 작성 등의 부담을 줄일 수 있다.
Spring Data JPA와의 연동 지원
Spring Data JPA는 Repository를 자동으로 구현하는 기능을 제공하므로,
개발자는 아래와 같이 Repository 인터페이스만 정의하면 편하게 Repository를 구성할 수 있다.
public interface BoardRepository extends JpaRepository<T,PK> {
}
하지만 기본적인 ORM으로 SQL이 부족하다면 nativeQuery, DAO 등의
여러가지 방법으로 SQL을 커스텀하여 구현이 가능하다.
대략적인 사용과정은 위와 같은 흐름을 가지고 있다.