반응형
아래와 같이 모든페이지에는 Layout으로 적용한 Header 부분이 공통적으로 들어간다. 그렇기 때문에 모든 페이지에서 해당 알림 데이터 리스트들이 필요하다. 하지만 현재 해당 헤더가 적용된 view를 반환하는 컨트롤러 코드들은 로그인과 회원가입 페이지들을 제외하면 총 9개가 있다. 이 많은 컨트롤러마다 일일히 패키지를 열어서 알림 테이블에서 회원별 알림 내역을 조회한 데이터들을 model에 담아 일일이 View에 뿌려줘야할까? 공통으로 사용되는 부분을 단순 반복 작업을 통해 추가하는건 너무 개발자스럽지 않다. 이 공통으로 사용되는 로직을 스프링 AOP를 적용해 해당 Contoller들의 Model에 알림 데이터들을 추가 해보자. AOP 적용 우선 먼저 build.gradle에 해당 의존성을 추가해주어..
아래와 같은 사이드바에 장바구니에 담긴 상품 개수, 찜 개수, 최근 본 상품이 표시되도록 하는 기능을 구현하게 되었다.그런데 개수 같은 경우에는 count 쿼리로 구해 model에 담아 view넘기는데이 사이드바가 메인, 장바구니, 결제, 상품상세 페이지 등에 적용이되어서 해당 컨트롤러들마다 사이드바에 필요한 데이터를 응답하는 로직이 중복되어 @Aspect로 AOP를 적용하게 되었다.AOP 적용아래는 사이드바에 공통으로 적용할 코드들을 담은 Aspect를 적용한 클래스이다.@Aspect@Component@Slf4j@RequiredArgsConstructorpublic class SidebarAspect { private final LikeService likeService; private f..
내 블로그 - 관리자 홈 전환 |
Q
Q
|
---|---|
새 글 쓰기 |
W
W
|
글 수정 (권한 있는 경우) |
E
E
|
---|---|
댓글 영역으로 이동 |
C
C
|
이 페이지의 URL 복사 |
S
S
|
---|---|
맨 위로 이동 |
T
T
|
티스토리 홈 이동 |
H
H
|
단축키 안내 |
Shift + /
⇧ + /
|
* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.