Loading...
Spring Framework Reference Documentation 7.0.2의 @SessionAttributes의 한국어 번역본입니다.
아래의 경우에 피드백에서 신고해주신다면 반영하겠습니다.
감사합니다 :)
@SessionAttributesSee equivalent in the Servlet stack
@SessionAttributes는 요청 사이에서 모델 속성을 WebSession에 저장하는 데 사용됩니다. 이는 특정 컨트롤러에서 사용되는 세션 속성을 선언하는 타입 레벨 어노테이션입니다. 이는 일반적으로 이후 요청에서 접근할 수 있도록 세션에 투명하게 저장되어야 하는 모델 속성의 이름이나 모델 속성의 타입을 나열합니다.
다음 예제를 고려해 보십시오:
1@Controller 2@SessionAttributes("pet") // (1) 3public class EditPetForm { 4 // ... 5}
| 1 | Using the @SessionAttributes annotation. |
1@Controller 2@SessionAttributes("pet") // (1) 3class EditPetForm { 4 // ... 5}
| 1 | Using the @SessionAttributes annotation. |
첫 번째 요청에서 pet이라는 이름을 가진 모델 속성이 모델에 추가되면,
자동으로 승격되어 WebSession에 저장됩니다. 이는 다른 컨트롤러 메서드가
SessionStatus 메서드 인자를 사용하여 저장소를 지울 때까지 그곳에
남아 있게 되며, 다음 예제와 같습니다:
1@Controller 2@SessionAttributes("pet") // (1) 3public class EditPetForm { 4 5 // ... 6 7 @PostMapping("/pets/{id}") 8 public String handle(Pet pet, BindingResult errors, SessionStatus status) { // (2) 9 if (errors.hasErrors()) { 10 // ... 11 } 12 status.setComplete(); 13 // ... 14 } 15}
| 1 | Using the @SessionAttributes annotation. |
| 2 | Using a SessionStatus variable. |
1@Controller 2@SessionAttributes("pet") // (1) 3class EditPetForm { 4 5 // ... 6 7 @PostMapping("/pets/{id}") 8 fun handle(pet: Pet, errors: BindingResult, status: SessionStatus): String { // (2) 9 if (errors.hasErrors()) { 10 // ... 11 } 12 status.setComplete() 13 // ... 14 } 15}
| 1 | Using the @SessionAttributes annotation. |
| 2 | Using a SessionStatus variable. |
@ModelAttribute
@SessionAttribute