controller
- 클라이언트로부터 HTTP 요청을 받고, 서비스 레이어에서 요청에 대한 적절한 메소드를 호출한 결과를 HTTP 응답으로 반환하는 역할
- 사용자 요청이 진입하는 곳
- 사용자 요청을 처리하는 곳
- 처리 후 서비스로 넘어간다
service
- repository와 controller 사이 미들웨어
- controller에서 받은 데이터를 가공해서 DB를 보내거나,
- DB에서 가져온 데이터를 가공해서 사용자에게 보내준다.
- 사용자 요구사항을 처리하는 곳 (비즈니스 로직)
entity
dto (Data Transfer Object)
- DTO는 클라이언트와 서버 간 데이터를 전송하기 위한 객체
- 데이터 보호, 변환, 검증을 담당하여 유지보수성을 높일 수 있다.
- Entity를 직접 노출하면 보안 문제가 발생할 수 있기 때문에 DTO를 사용하여 필요한 데이터만 주고 받는다.
- 데이터 저장 담당 클래스
- 계층간에 데이터를 교환할 때 주로 사용
- golang에서 보통 구조체를 사용
repository
-
- 현재글Springboot [controller/service/entity/dto/repository] 역할
-