Nest.js와 레이어드 아키텍처
79
작성한 질문수 11
nest.js에서의 레이어드 아키텍처 구조에 궁금한 점이 생겨 질문을 남깁니다
각 계층별 실제 구현 파일을 아래와 같이 이해하면 될까요?repository와 entity가 정확히 어떤 계층에 속하는지 궁금합니다.
Presentation Layer
controller.ts
Application Layer
service.ts
Domain Layer
repository.tsentity.ts
Data Transfer Object
dto.ts
답변 1
0
안녕하세요, 인프런 AI 인턴입니다.
Gyuri Kim님께서 문의하신 Nest.js의 레이어드 아키텍처 구조에 대해 설명드리겠습니다.
Presentation Layer
controller.ts: 요청을 받고, 적절한 서비스 메서드를 호출하여 결과를 반환합니다.
Application Layer
service.ts: 비즈니스 로직을 처리합니다. 요청에 따라 필요한 작업을 수행합니다.
Domain Layer
repository.ts: 데이터베이스와의 상호작용을 담당합니다. Spring Data JPA와 유사하게 보통 데이터 저장소에 대한 접근을 제공하는 역할을 합니다.
entity.ts: 데이터베이스의 테이블에 매핑되는 도메인 객체를 정의합니다. 도메인 모델을 표현하는데 사용됩니다.
Data Transfer Object (DTO)
dto.ts: 데이터 전송을 위한 객체로, Presentation Layer와 Application Layer 사이에서 필요한 데이터 만을 담아서 전달하는 객체로 사용됩니다.
repository와 entity는 주로 Domain Layer에 속하며, 도메인의 모델과 데이터 접근을 책임집니다.
Spring Data JPA 및 Spring Data JDBC와 같은 데이터 접근 기술들이 이 Layer와 상호작용하게 됩니다. 추가적인 정보는 Spring Data JPA Reference Documentation와 Spring Data JDBC Reference Documentation에서 확인하실 수 있습니다.
질문에 대한 답변이 도움이 되셨길 바랍니다. 다른 궁금한 점이 있으면 언제든지 문의해 주세요.
node.js 설치 관련 질문 드립니다
0
18
1
Cursor 설정
0
24
1
cascade 질문
0
39
1
@types/bcrypt 설치과정이 누락된것같습니다.
0
46
1
그대로 한 것 같은데 에러가 발생합니다..
0
48
2
process.env port key 에러
0
46
1
어렵네요
0
19
1
추상화
0
49
1
그래프 ql 문서 사용할때 느낌표 남는거 어떻게 없애나요?
0
83
2
강의 전체 소스 코드를 받고싶습니다.
0
76
2
로거 객체 질문
0
55
1
react-native-screens 버전 호환 문제
2
153
1
타입 주석
0
48
1
안드로이드 실행 중 Drawer네비게이션과 MapView 성능 문제
0
103
2
코드 공유
0
83
1
[공유] DTO optional 필드가 undefined로 잡혀 TypeORM 조건이 깨지는 현상
0
94
2
db연결이 다되었는데 tables에 posts 테이블이 안생겨요
0
70
2
SQL Sheell
0
51
1
PostRepository 구현
0
44
1
TypeORM 마이그레이션
0
78
2
NestJS, TypeORM의 typeorm.ts에서 autoLoadEntities: true와 entities: []의 공존
0
235
1
터미널에서 자동완성 되는건 어떤 프로그램인가요?
0
310
2
module에서 import, export, provider, controller..
0
131
2
슬랙채널 가입이 안됩니다.
0
322
2





