Spring) model
model 객체
- Controller 에서 생성된 데이터를 담아서 View 로 전달할 때 사용하는 객체.
- Servelt 의 request.setAttribute() 와 유사한 역할.
- Method 에 Model 타입이 지정된 경우 Model 타입의 객체를 만들어서 메서드에 주입
- addAttribute("키", "값") 메소드를 사용하여 전달할 데이터 세팅.
Ex) 활용 예시
* 리스트 페이지 번호를 파라미터로 전달받고, 실제 데이터를 View 로 전달해야 하는 경우
* 파라미터에 대한 처리 후 결과를 전달해야 하는 경우
@ModelAttribute
- 강제로 전달받은 파라미터를 Model에 담아서 전달하도록 할 때 필요한 어노테이션
- 스프링에서 Java beans 규칙(Getter, Setter, 생성자 포함)에 맞는 객체는 파라미터 전달이 자동으로 가능.
- 하지만 일반 변수의 경우, 자동 전달 불가능. model 객체를 통해서 전달 필요.
* @ModelAttribute("파라미터명")
ex) 일반 변수에 @ModelAttribute 없이 파라미터 전달시
- SampleDTO(Java beans)의 name, age 값은 정상적으로 출력되지만, page 변수의 경우 결과 값이 출력되지 않는다.
ex) 일반 변수에 @ModelAttribute 적용 후 파라미터 전달시
- 어노테이션만 추가해주면 간단하게 파라미터 전송 가능.
20.12.20 수정 - model 객체
도움되셨다면 공감 버튼 꾹 눌러주세요
오늘도 좋은 하루 되세요~