인프런 커뮤니티 질문&답변

이충권님의 프로필 이미지
이충권

작성한 질문수

스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술

HTTP 요청 메시지 - 단순 텍스트

질문드립니다.

작성

·

171

0

안녕하세요 영한님

메세지 바디에 json형식으로 요청이들어오게 되고 그것을 

읽어오는데 까지는 이해했습니다.

그런데 username : hello age : 20 이렇게 넘어올때 

json에서 각각의 값을 호출은 어떻게 받아야 하는지 궁금합니다.

답변 2

1

김영한님의 프로필 이미지
김영한
지식공유자

안녕하세요. 이충권님

바로 다음 장에서 자세히 설명드립니다^^

감사합니다.

0

안녕하세요. 이충권 님, 공식 서포터즈 codesweaver 입니다.
.

보통 JSON으로 들어오는 데이터를 쉽게 객체로 이용하려면 다음과 같이 각각의 값에 대응하는 필드를 가진  DTO객체를 이용합니다.

@Getter @Setter
public class SomeApiDto {
    private String name;
    private Integer age;
}

.

그리고 @ModelAttribute 기능을 이용할 경우 스프링에서 JSON데이터를 객체에 바인딩 해서 컨트롤러로 전달해 줍니다.

@RestController
public class SomeApiController {
    @PostMapping("/add")
    public Member add(@ModelAttribute SomeApiDto dto) {
        Member member = new Member();
        member.setName(dto.getName());
        member.setAge(dto.getAge());
        
        someApiService.save(member);
        
        return member;
    }
}

.

아울러 이런 JSON 데이터를 객체로 바인딩 할때 값들에 대한 유효성 검증도 할 수 있습니다. 이런 검증에 대한  부분은 MVC2편 강의에서 다루고 있습니다.

.
감사합니다.

이충권님의 프로필 이미지
이충권

작성한 질문수

질문하기