스프링/3. 스프링 MVC

43. ModelAttribute

sdafdq 2023. 8. 12. 19:24
    @ResponseBody
    @RequestMapping("/model-attribute-v1")
    public String modelAttributeV1(@ModelAttribute HelloData helloData){
        log.info("username={}, age={}",helloData.getUsername(),helloData.getAge());
        return "ok";
    }

    @ResponseBody
    @RequestMapping("/model-attribute-v2")
    public String modelAttributeV2(HelloData helloData){
        log.info("username={}, age={}",helloData.getUsername(),helloData.getAge());
        return "ok";
    }

아예 객체에다 받을 수 있다. 물론, 

 

@Data
public class HelloData {
    private String username;
    private int age;


}

key와 변수 이름이 같아야 한다.

거기다가 getter, setter가 있어야 한다.

 

왜냐하면 순서가

@ModelAttribute HelloData helloData면

HelloData 객체를 만듦.

그 다음 setter로 이름 같은 거 찾아서 넣음.

 

내가 생성자 따로 만들었을 때에는, 인자의 이름을 역시 같게 해주어야 한다.

'스프링 > 3. 스프링 MVC' 카테고리의 다른 글

45. HTTP API JSON  (0) 2023.08.12
44. HTTP API  (0) 2023.08.12
42. 스프링으로 파라미터 꺼내기  (0) 2023.08.12
41. 요청 파라미터 종류  (0) 2023.08.12
40. 요청 종류에 따른 api 구현  (0) 2023.08.12