[Spring] @ModelAttribute
2024. 7. 19. 19:16ㆍWebBack/Spring
@ModelAttribute(컨트롤 메서드의 매개변수)
@ModelAttribute는 적용 대상을 Model의 속성으로 자동 추가해주는 애너테이션이다. myDate가 key로 date의 주소값이 value로 저장된다.
public String main(@ModelAttribute MyDate date, Model m) {}
따라서 m.addAttribute("myDate", date)를 따로 명령하지 않아도 된다. 본래는 @ModelAttribute("키 이름")MyDate date로 적어야 하지만 생략하면 MyDate의 앞글자가 소문자가 된 값을 key로 사용한다.
@ModelAttribute(반환 타입)
아래처럼 반환 타입에도 적용할 수 있다. @ModelAttribute("키 이름")를 적으면 된다. 아래는 yoil이 key값이 되고, 호출 결과가 value가 된다. 따라서 m.addAttribute("yoil", yoil)을 따로 명령하지 않아도 된다.
private @modelAttribute("yoil") char getYoil(MyDate date) {
return getYoil(date.getYear(), date.getMonth(), date.getDay());
}
RequestParam은 기본형, String일 때, ModelAttribute는 참조형일 때 사용되고 생략되어 있다. 둘은 같이 사용할 수는 없다. RequestParam은 ${param.파라미터 이름}으로 사용이 가능해서 굳이 model에 저장할 필요가 없다.
'WebBack > Spring' 카테고리의 다른 글
[Spring] 회원가입 화면 예시 폼 (0) | 2024.07.19 |
---|---|
[Spring] 리소스 불러올 때 URL 경로에 resources 빼는 방법 (0) | 2024.07.19 |
[Spring] 한글 변환 필터 (0) | 2024.07.18 |
[Spring] 반복 연습 (0) | 2024.07.16 |
[Spring] RequestParam이란? (0) | 2024.07.14 |