Back-end/Spring boot

11월 4주차 공부정리

메델 2022. 11. 27. 15:39

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