예시 데이터
[
{
"name": "철수",
"age": 20
},
{
"name": "영희",
"age": 20
}
]
Query String으로 변환하기
위의 객체 배열을 GET 방식으로 받기 위해 테스트할 Query String으로 작성한다. 객체명[index].변수명(key)=값(value) 형태로 배열 안의 객체의 정보를 입력할 수 있다. 구글링을 통해 생각보다 자료가 잘 나오지 않는 것으로 보아 선호하는 방법은 확실히 아닌 것 같다.
GET
?Profile[0].name=철수&Profile[0].age=20&Profile[1].name=영희&Profile[1].age=20
객체 DTO 만들기
Getter, Setter, Constructor가 꼭 필요하기 때문에 Annotation으로 대체한다.
@Data
@NoArgsConstructor
@AllArgsConstructor
public class ProfileDto {
private String name;
private int age;
}
객체를 List<Dto>에 담기
객체 배열이라서 Dto를 List에 담아서 전달해야하는데 @RequestParam은 아쉽게도 지원하지 않는다.
-> 그러니 Spring MVC를 사용하기 위해 Wrapper Class를 추가한다.
@Data
@NoArgsConstructor
@AllArgsConstructor
public class ProfileDtoList {
private List<ProfileDto> profileDtoList;
}
Controller에서 요청받기
@GetMapping("/profile")
public void getProfileDtoList(
ProfileDtoList profileDtoList) {
}