본문 바로가기
✨ Back-end/Spring-Boot

[Spring] 쇼핑몰 - 32 사용자 계정에서 목록 조회 Interceptor

by 환풍 2023. 4. 5.
728x90
반응형

사용자 계정에서 카테고리 목록조회 하는 방법을 알아보자.

 


personal_layout.html

개인 레이아웃 페이지를 하나 생성해주었다. 

personal_side.html

side쪽에 장바구니 목록, 구매내역, 개인 정보 변경을 위한 사이드도 추가했다.

 

header에서 내 정보 수정하기를 누르면 컨트롤로 이동한다.

CartController 컨트롤러

내 정보 확인하기 컨트롤러에서 장바구니 페이지 목록을 조회하는 페이지를 열어준다.

cart_list.html

하지만 메뉴에 카테고리 목록이 조회가 되지 않는다. 이럴 때 ItemController에서 작성한 상품목록 쿼리를 계속 끌어다 써주면 되는데, 그러기에는 불필요한 중복이 반복되므로 intercepter를 써보도록 하자 !

CategoryInterceptor

CategoryInterceptor를 만들어줬고 HandlerInterceptor 인터페이스를 받아왔다.

postHandle을 만들어 줬다. postHandle() 메서드는 컨트롤러가 실행된 후에 호출된다.

컨트롤러에있는 특정 메소드가 실행되고 다 하고나서 html로 이동한다.

IntercepterConfig

새로운 카테고리인터셉터 객체를 만들어서 리턴시키겠다. @Bean이 객체로 저장시키는 역할을 해준다.

그리고 위에서 카테고리 목록 조회를 어떤 경로에 항상 실행시켜주는지 정의해주면 된다.

/item/ 경로에 있는 모든 곳에다가 카테고리 목록을 조회하라고 했다.

단, Ajax는 컨트롤러랑 함께 실행되면 안된다.

따라서 excludePathPatterns("/**/*Ajax");  를 추가해주어 모든 컨트롤러에 있는 어쩌고 저쩌고 Ajax는 제외시켰다.

ItemController 컨트롤러

여기서 빨간 박스안에 있는 상품 목록 조회하는 코드를 지워줘도 된다.

 

 

 

 

이렇게 사용자 계정에서도 카테고리 목록이 조회되는 것을 확인할 수 있다.

728x90
반응형

댓글