일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- full text indexing
- 이클립스
- 자바
- jquery
- 단축키
- 상속예제
- 전자정부
- Full text
- 형변환
- 전체텍스트
- Login with OAuth Authentication
- IBatis procedure
- 자바 야구게임
- 추상클래스
- 전체
- 가변인자
- 25가지 효율적인 sql작성법
- 로또
- Validations
- 업캐스팅
- 스프링
- 다형성
- 페이징
- angular2
- 다운캐스팅
- 야구게임
- while
- 상속
- Random
Archives
- Today
- Total
nalaolla
@ModelAttribute 본문
728x90
반응형
@ModelAttribute
관련 문서
required
spring framwork 2.5 or higher
파라미터 타입에 명시하는 경우
method( @ModelAttribute Model model )
method( @ModelAttribute( name ) Model model )
name: attribute name
파라미터를 모델의 프로퍼티와 매핑한다.
화면에서 전달된 쿼리스트링이나 폼 데이터를 모델에 자동 할당하는 기능은 @ModelAttribute 어노테이션 없이도 작동한다. @ModelAttribute는 데이터가 바인딩된 객체를 VIEW에서 재사용되어야 할 필요가 있을 때 사용한다.
가령 다음의 경우엔 MyModel이 "specified"란 이름으로 VIEW에 전달된다:
@RequestMapping("/some.do") public ModelAndView draw(@ModelAttribute("specified") MyModel myModel) { // ... } | cs |
이후 VIEW에선 'specified'를 request.attribute에서 가져올 수 있다.
메서드 선언 레벨에 명시하는 경우
@ModelAttribute returnType methodName( ... )
컨트롤러에서 뷰에 전달할 일종의 공통 모델을 설정한다. 메서드가 리턴하는 값은 Request객체에 전달되며 전달 범위는 해당 메소드가 존재하는 컨트롤러 전체에 해당된다. @ModelAttribute 어노테이션이 적용된 메서드는 컨트롤러가 자동으로 호출한다. 단, 매 요청마다 반복 실행되므로 효율성을 고려해야 한다.
@Controller public class TestController { @RequestMapping("test/viewTest.do") public ModelAndView viewTest() { ModelAndView mv = new ModelAndView(); mv.setViewName("/test/viewTest"); return mv; } @ModelAttribute("myObject") public String refModelTest() { return "hello-o"; // request.setAttirubte("myObject", "hello-o") 와 같으며 // 선언된 클래스의 전역으로 실행된다. } } | cs |
728x90
반응형
'SPRING' 카테고리의 다른 글
Spring Framework: 포워딩/리다이렉션 (0) | 2016.05.31 |
---|---|
@RequestParam (0) | 2016.05.31 |
@Controller (0) | 2016.05.31 |
@RequestMapping (0) | 2016.05.31 |
Spring Framework: annotation 정리 (0) | 2016.05.31 |