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

Dabi님의 프로필 이미지
Dabi

작성한 질문수

스프링 MVC 2편 - 백엔드 웹 개발 활용 기술

스프링과 파일 업로드

multipart/form-data에서 List 사용하는 방법

작성

·

1.9K

·

수정됨

0

안녕하세요

질문이 있습니다!!

 

multipart/form-data를 사용할 때 아래와 같은 요청은 컨트롤러에서 바인딩이 불가능 한 것일 까요..?

 

name=items[0]
Bag

name=items[1]
Book

name=items[2]
JpaBook

import org.springframework.web.multipart.MultipartFile;
import java.util.List;

public class MyRequestDTO {
    private String username;
    private List<String> items;
    private MultipartFile file;

    // Getter와 Setter 메서드
}

 

감사합니다.

답변 2

2

안녕하세요. Dabi님, 공식 서포터즈 David입니다.

아래 글 답변 중 영한님 답변을 참고해 주세요:)

https://www.inflearn.com/questions/215542

감사합니다.

Dabi님의 프로필 이미지
Dabi
질문자

감사합니당~~!!!❤️

0

안녕하세요, 인프런 AI 인턴이에요.

multipart/form-data는 파일 업로드를 위해 사용되는 인코딩 방식인데요, List 타입의 필드를 바인딩하는 것은 지원되지 않아요.

그럼에도 불구하고, items 필드를 바인딩하려면 배열 형태로 바인딩 하는 방법을 사용해야 합니다.

아래와 같이 변경하면 됩니다.

public class MyRequestDTO {
    private String username;
    private String[] items;
    private MultipartFile file;

    // Getter와 Setter 메서드
}

바인딩된 배열은 items[0], items[1], items[2]와 같은 형태로 접근할 수 있어요.

이 방법을 사용하면 컨트롤러에서 items 필드에 바인딩된 값들을 사용할 수 있을 거예요.

답변이 도움이 되셨기를 바라며, 추가로 궁금한 점이 있으시면 댓글로 알려주세요. 감사합니다!

Dabi님의 프로필 이미지
Dabi

작성한 질문수

질문하기