DTO(Data Transfer Object)
다른 레이어 간의 데이터 교환에 활용, 교환하는 용도로만 사용하는 객체로 별도의 로직에 포함되지 않음
각 클래스 및 인터페이스를 호출하면서 전달하는 매개변수로 사용되는 데이터 객체
스프링 부트의 예외 처리 방식
@(Rest)ControllerAdvice와 @ExceptionHandler를 통해 모든 컨트롤러의 예외를 처리한다
@ExceptionHandler를 통해 특정 컨트롤러의 예외를 처리한다.
Filter
유일하게 ServletRequest, ServletResponse의 객체를 변환할 수 있음
웹 어플리케이션에서 관리되는 영역으로써 Spring Boot Framework에서 Client로 부터 오는 요청/응답에 대해서 최초/최종 단계의 위치에 존재한다.
필터를 통해서 요청/응답 정보를 변경하거나, Spring에 의해서 데이터가 변환되기 전에 순수한 Client의 요청/응답 값을 확인할 수 있다.
request/response의 Logging 용도로 활용하거나, 인증과 관련된 Logic들을 해당 Filter에서 처리
이를 선/후 처리함으로써 Service business logic과 분리시킴
Interceptor
Filter와 매우 유사한 상태로 존재 하지만 Interceptor의 경우 Spring Context에 등록됨
AOP와 유사한 기능 제공 가능 , 주로 인증 단계를 처리하거나 Logging 하는데 사용
이를 선/후 처리함으로써 Service business logic과 분리시킴
Lombok
반복적으로 사용하는 getter/setter 같은 메서드를 어노테이션으로 대체하는 기능을 제공하는 라이브러리
- 롬복을 사용하면 좋은점
- 반복적인 코드를 생략할 수 있어 가독성이 높아짐
- 어노테이션 기반으로 코드를 자동 생성하기 때문에 생산성이 높아짐
- 롬복을 안다면 간단하게 코드를 유추할 수 있어 유지보수에 좋음
(참고: fastcampus 한 번에 끝내는 Java/Spring 웹 개발 마스터)
'Back-end > Spring boot' 카테고리의 다른 글
IOC, DI, ObjectMapper (0) | 2022.11.13 |
---|---|
웹 개발 (0) | 2022.09.20 |
디자인 패턴 (0) | 2022.09.17 |
객체지향 (0) | 2022.09.15 |