본문 바로가기
개발/Spring

[Spring] addAttribute, addFlashAttribute 차이

by devhooney 2024. 3. 13.
728x90

 

 

addAttribute, addFlashAttribute 차이에 대해서 알아보자

 

 

 

728x90

 

 

 

addAttribute와 addFlashAttribute는 Spring의 RedirectAttributes 인터페이스의 메서드이다.

이 둘의 차이점은 리다이렉트된 후에 사용할 수 있는 속성의 수명에 있다.

  1. addAttribute: 이 메서드를 사용하여 전달된 속성은 URL 쿼리 문자열의 일부로 전달된다. 즉, 속성은 URL에 직접 노출되므로 보안에 취약할 수 있다. 또한, URL의 길이 제한이 있을 수 있다. 주로 데이터가 작은 경우나 보안 상 문제가 없는 경우에 사용된다.
  2. addFlashAttribute: 이 메서드를 사용하여 전달된 속성은 일회성으로 저장되어 다음 요청에만 사용할 수 있다. 이러한 속성은 URL에 직접 노출되지 않으며, 세션을 통해 저장되므로 보안에 좀 더 안전하다. 이 메서드는 주로 리다이렉트 후에 사용자에게 메시지를 전달하는 용도로 사용된다.

즉, addAttribute를 사용하면 URL에 속성이 노출되지만, addFlashAttribute를 사용하면 URL에 노출되지 않으며 일회성으로만 사용할 수 있다. 보안적인 측면과 데이터의 수명에 따라 적절한 메서드를 선택하여 사용해야 한다.

 

 

728x90