컨트롤러 : 웹 MVC 컨트롤러 역할로 명령을 입력
서비스 : 비즈니스 로직을 구현
리포지토리 : 데이터베이스에 접근, 도메인 객체를 DB에 저장하고 관리
도메인 : 비즈니스 도메인 객체로 예) 회원, 주문 등과 같은 것을 데이터베이스에 저장하고 관리
서비스의 메서드 작명은 최대한 비즈니스 용어를 사용하는 것이 좋다.
컴포넌트 스캔과 자동 의존관계 설정
@Component 애노테이션이 있으면 스프링 Bean으로 자동 등록된다.
@Controller 컨트롤러가 스프링 Bean으로 자동 등록된 이유도 컴포넌트 스캔 때문이다.
@Component를 포함하는 다음 애노테이션도 스프링 Bean으로 자동 등록된다.
- @Controller
- @Service
- @Repository
출처 : Inflearn - 김영한 강사님 스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술