전역 정보를 빈으로 등록하여 반복 작성 코드 줄이기

‍bng4535·2023년 4월 2일
0

문제 상황

모든 페이지에서 출력되는 레이아웃 html의 header 부분에 로그인한 사용자의 정보를 출력해야 한다면, 어떤 페이지에 접속하든 해당 컨트롤러에서 view에게 model을 통해 사용자 정보를 전달해야 한다.

문제

  • 모든 페이지 마다 view에 사용자 정보를 전달하는 코드를 반복 작성 해야 한다.

해결

  • @RequestScope는 Spring Bean의 인스턴스를 HTTP 요청 당 하나씩 생성하는 라이프 사이클이다. 즉, 각각의 HTTP 요청마다 새로운 빈 인스턴스가 생성되므로 이를 활용한다.
  • 빈으로 등록된 객체에 대해 템플릿 엔진은 @를 통해 접근할 수 있다.
  • 로그인한 사용자 정보와 같은 전역적으로 사용되는 정보를 빈으로 등록하는 것

코드

https://github.com/hanbonghun/gramgram/commit/bef4466f5f8d2c8eca8f9c29f1d2b7c7a3ce1893

profile
공부 기록

0개의 댓글