[SpringBoot 구조] - Entity / DTO / Repository / Service / Controller

2023. 12. 20. 16:03SpringBoot+JPA

반응형

 

 

SpringBoot
자바 기반의 오픈 소스 프레임워크인 Spring Framework의 일종
간단한 설정과 기본값을 사용하여 빠르게 웹 애플리케이션을 개발하도록 도와주는 도구

 

 

 

Entity:

데이터베이스 테이블과 매핑되는 객체
JPA를 통해 데이터베이스와 상호 작용
필요에 따라 다양한 어노테이션을 사용하여 매핑을 정의

[Entity 자세히 + 어노테이션 정리]

더보기

주로 사용하는 어노테이션

@Entity 

@Getter

@Setter

@AllArgsConstructor

@NoArgsConstructor

@Builder

@Table(name = "테이블명)

@SequenceGenerator

 

사용 금지!
@ToString  

 


DTO (Data Transfer Object)

서비스와 뷰 간 데이터 전송을 위한 객체
엔티티와 분리되어 비즈니스 로직에 영향을 미치지 않는 데이터 전송을 담당


Repository:

JPA를 이용하여 데이터베이스와 상호 작용하는 인터페이스
CRUD 작업을 수행하며, Spring Data JPA를 사용하면 구현을 작성하지 않아도 자동으로 생성


Service:

비즈니스 로직을 담당
Repository로부터 데이터를 가져와 가공하거나 엔티티 간의 관계를 처리하는 등의 작업을 수행


Controller:

클라이언트의 요청을 처리하고 서비스를 호출하여 데이터를 반환
DTO를 이용하여 클라이언트와의 데이터 교환을 담당

 

 

 

 

반응형