728x90
addAttribute, addFlashAttribute 차이에 대해서 알아보자
728x90
addAttribute와 addFlashAttribute는 Spring의 RedirectAttributes 인터페이스의 메서드이다.
이 둘의 차이점은 리다이렉트된 후에 사용할 수 있는 속성의 수명에 있다.
- addAttribute: 이 메서드를 사용하여 전달된 속성은 URL 쿼리 문자열의 일부로 전달된다. 즉, 속성은 URL에 직접 노출되므로 보안에 취약할 수 있다. 또한, URL의 길이 제한이 있을 수 있다. 주로 데이터가 작은 경우나 보안 상 문제가 없는 경우에 사용된다.
- addFlashAttribute: 이 메서드를 사용하여 전달된 속성은 일회성으로 저장되어 다음 요청에만 사용할 수 있다. 이러한 속성은 URL에 직접 노출되지 않으며, 세션을 통해 저장되므로 보안에 좀 더 안전하다. 이 메서드는 주로 리다이렉트 후에 사용자에게 메시지를 전달하는 용도로 사용된다.
즉, addAttribute를 사용하면 URL에 속성이 노출되지만, addFlashAttribute를 사용하면 URL에 노출되지 않으며 일회성으로만 사용할 수 있다. 보안적인 측면과 데이터의 수명에 따라 적절한 메서드를 선택하여 사용해야 한다.
728x90
'개발 > Java & Kotlin' 카테고리의 다른 글
[Java] OrElse, OrElseGet 차이 (165) | 2024.04.15 |
---|---|
[Spring] 정적파일 캐시에 담기 (158) | 2024.04.12 |
[Java] DTO, DAO, VO 차이 알아보기 (79) | 2023.10.10 |
[Java] 오브젝트: 코드로 이해하는 객체지향 설계 (2) (151) | 2023.10.02 |
[Java] 오브젝트: 코드로 이해하는 객체지향 설계 (1) (124) | 2023.09.22 |