config
- @Configuration이 담겨있다.
- 스프링이 실행될 때 필요한 객체(Bean)들을 어떤 방식으로 만들고 연결할지 코드로 정의해둔 설정 클래스
controller
- 클라이언트의 요청을 처음으로 받는 계층
- API의 진입 지점으로써 HTTP Body를 객체로 변환하고 있다.
domain
- 비즈니스의 핵심 개념(모델)과 규칙이 살아있는 층
- 보통 Entity(JPA 사용시), Value Object(값 객체), 도메인 규칙(비즈니스 로직)이 있다.
dto
- 계층 간에 데이터를 전달하기 위한 객체
- request, response
entity
- DB 테이블과 매핑되는 객체
- JPA가 이 객체를 기준으로 데이터를 조회, 저장, 수정한다.
- 테이블의 컬럼을 자바 필드로 표현하며, 보통
@Entity 어노테이션을 사용한다.
Repository
- SQL을 사용해 실제 DB와의 통신을 담당한다.
Service
- 현재 유저가 있는지, 없는지 등을 확인하고 예외 처리를 해준다.=
👀참고👀
Controller에서 [Getter가 있는 객체를 반환하면] JSON 형식으로 반환된다.