Repository
ㅡ MVC 디자인 패턴의 Model의 일부?
ㅡ DB의 접근을 담당하는 부분
ㅡ 각종 SQL 및 DB의 테이블 관리
ㅡ Service의 호출에 따라 DB 변환 및 검색 후 결과 반환
@Repository
ㅡ 해당 클래스를 Spring Bean으로 생성해주는 어노테이션
ㅡ @Component로 사용되나 해당 클래스가 Repository를 담당한다는 것을 직접적으로 보여주기 위해 사용
JpaRepository
ㅡ JpaRepository Interface를 상속
→ JpaRepository<T, ID> : 해당 인터페이스를 상속받은 인터페이스를 JPA Query Creation을 사용할 수 있도록 하는 인터페이스
- T : DB의 테이블을 구현하는 Entity Class
- ID : 해당 Entity Primary Key의 타입
@Entity
ㅡ ORM을 사용하기 위해 DB에 상응하는 Entity Class를 작성
ㅡ ORM이 해당 어노테이션으로 작성된 Class를 특정 테이블에 매핑시켜줌
ㅡ @Entity(엔터티명)으로 인자를 넣어 해당 엔터티의 이름 지정 가능
@Table
ㅡ 해당 Entity의 이름을 지정하기 위한 어노테이션
ㅡ @Table을 추가하지 않으면 @Entity의 인자로 지정한 이름을 따르며 @Entity로 이름을 지정하지 않을 시 클래스 이름을 테이블 이름으로 간주
@id
ㅡ primary key로 사용할 필드 지정
@GeneratedValue
ㅡ id 형태의 Primary key를 자동으로 생성해주는 어노테이션
@GeneratedGenerator
ㅡ 커스텀 Generator를 사용할 때 사용
@Query
ㅡ 원하는 쿼리를 지정
'Spring' 카테고리의 다른 글
Spring 사용 시 어노테이션 정리 + JpaRepository 기본 메서드 (0) | 2023.04.04 |
---|---|
Entity, DTO, VO, Controller, Service, Repository, GET, POST 등 (0) | 2023.03.09 |
JPA (0) | 2023.03.06 |
Service (0) | 2023.03.06 |
Controller / DTO (0) | 2023.03.05 |
댓글