728x90

도메인에서 DB Table 1:1 구조체 만들기

저장소 Interface 만들기

해당 RepositoryDB receive 함수 구현하기

DTO 정의하기

POST method 왔을 Request 받는 정의, Response Client 에게 응답 정의

 

Service 구현

 

 

Service 는 Handler 통해 DTO(Request dto) 받아서 domain tpye 으로 repository 값을 처리하고 Response dto Handler 에게 처리된 값을 넘긴다.

 

 

Account Service Interface 구현

 

AccountService Handler 에서 직접 구현
NewAccountService
app.go 에서 Handler func 사용

 

 

handler 에서 recive 함수 구현

 

 

Request 에서 넘어온 데이터를 파싱하여 마샬링합니다.

각종 error 처리를 하고 service NewAccount 마샬링된 데이터를 넘깁니다.

주의할점 : Handler 에서 구현된 NewAccount reciver client 첫번째로 통신하는 함수입니다. 함수는 Client 에서 넘어온 데이터를 database 에 넣기위해 데이터를 마샬링하고 service 가공된 데이터를 넘깁니다.

 

Service 넘어가기전에 데이터 validation 체크하기

 

DTO 에서 recive 만들어 규격에 위반하는 데이터가 들어왔을 error 리턴하는 함수를 만듭니다.

 

 

service NewAccount

 

Handler NewAccount 에서 마샬링된 data 받아서 validation 체크를 하고 error 없으면 domain 구조체를 만들어 repository 저장하고 저장된 결과를 반환합니다.

 

Validation 걸렸을때

저장되었을

728x90