[Spring Boot / 백엔드] 스프링 부트 계층 구조 이해하기 - Controller, Service, Repository 정리
프로젝트 구조를 잡고 나면 그다음으로 자연스럽게 드는 생각이 있습니다. “그래서 이 파일들 안에는 대체 어떤 코드가 들어가야 하지?” 처음 스프링을 공부할 때는 저도 Controller, Service, Repository를 일단 만들어두고, 필요한 코드를 그때그때 넣으면 된다고 생각했습니다. 그런데 실제로 API를 하나씩 구현해보니 이 세 계층은 단순히 관습적으로 나누는 것이 아니라, 각자 맡아야 하는 역할이 분명히 다르다는 걸 알게 됐습니다. 요청을 받는 곳, 실제 로직을 처리하는 곳, 그리고 DB와 소통하는 곳이 뒤섞이기 시작하면 코드는 금방 복잡해지고, 나중에는 어디를 수정해야 하는지도 헷갈리게 됩니다. 그래서 이번 글에서는 워크북 내용을 바탕으로 Controller, Service, Repos..