스프링,스프링부트

6/7 스프링가이드 정리

JUN0126 2020. 6. 7. 11:36

1.디렉토리 구조

  1-1 Layer

Layer 구조 

    - 프로젝트 이해가 낮아도 전체적인 구조를 빠르게 파악 가능  

    - 작성 하고자하는 계층이 명확할 경우 빠르게 개발 가능

   

    - 각 레이어 별로 수십개의 클래스들이 존재하여 코드 파악이 어         려우며 코드의 응집력이 떨어짐

 

 

 

 

  1-2 Domain

- 관련된 코드들이 응집해 있음

- 디렉토리 구조를 통해 도메인을 이해할 수 있다

- 도메인 지식 없어 이해하기 어려움

- 각 계층을 구분하기 위한 논의가 필요

 

domain : 도메인을 담당 (API,Service 로직)

 - api : 컨트롤러 클래스들이 존재

 - domain : 도메인 엔티티에 대한 클래스로 구성 

   특정 도메인에 만 속하는 Embeddable,Enum 같은 클래스 구성

 - dto : 주로 Request,Response 객체들로 구성됨

 - exception : 해당 도메인이 발생시키는 Exception으로 구성

 

global : 프로젝트 전체 담당 (error,config 등등)

  - common : 공통으로 사용되는 Value 객체들로 구성

  페이징 처리를 위한 Request, 공통된 응답을 주는 Response 객체

  - config : 스프링 각종 설정 구성

  - error : 예외 핸들링 담당 클래스로 구성

  - util : 유틸성 클래스 

 

Infra : 외부 인프라 스트럭처 담당

 

2.LomBok 사용법

 - @Data 는 @ToString , @EqualsAndHashCode,@Getter,@Setter, @RequiredArgsConstructor을 한번에 처리

 - 무조건 적인 @Data 사용은 지양 하는것이 좋다

 

 

'스프링,스프링부트' 카테고리의 다른 글

@Transactional  (0) 2023.08.26
Servlet의 이해  (0) 2021.12.05
람다식 (Lambda)  (0) 2021.07.10
DAO, DTO, VO, Entity  (0) 2021.06.30
SpringBoot를 이용한 Rest API -1  (0) 2020.07.02