1. Controller 의 부담을 줄이기 위한 Filter, interceptor 그리고 controllerAdvice
a. Filter
filter 는 servlet 컨테이너에서 요청과 응답을 처리하기 전후에 동작하는 기능.
인코딩 변환, 보안 체크, 로깅 등의 작업을 수행
filter 는 Servlet 컨테이너에 등록되며 Spring Security를 사용한다면 Dispatcher Servlet 앞 단에서 적용됨.
b. Interceptor
Interceptor는 Spring MVC 요청 전후에 동작하는 기능.
c. ControllerAdvice
2. DTO 계층적 분리
DTO 는 Data Transfer Object 로 계층 간 데이터 교환 혹은 데이터 전송 객체를 의미.
계층적인 모델링을 구축할 때 조심해야하는 부분이 바로 Service는 Controller에 의존하지 않아야 하는 것입니다.
즉, Service 레이어는 핵심 비즈니스 로직을 수행해야 하는 곳이기 때문에 Controller가 바뀌더라도 Service 단에서 이루어지는 핵심 비즈니스 로직이 영향을 받으면 안 됩니다
'SpringBoot' 카테고리의 다른 글
CQRS 에 관해서 정리 (0) | 2025.01.03 |
---|---|
JWT (JSON Web Token) (0) | 2024.12.04 |
@PostConstruct (0) | 2024.10.31 |