본문 바로가기

개발/Spring Boot

[Spring Boot] multipart/form-data 적용법

반응형

Spring Boot에서 API를 통하여 multipart/form-data로 받는 방법을 설명하려고 한다.

 

1. PostMapping의 내용에 produces, consumes, MultiValueMap은 어떤 의미인지 알아보자.

  - produces : Client가 Server에게 요청을 할때 보내는 규격이다.

  - consumes : Server가 Client에게 응답을 주는 규격이다.

  - MultiValueMap : Map이랑 비슷하지만 add 메소드를 실행시 이미 키가 있다면 배열로 데이터를 집어넣어주는 객체이다. 해당 객체는 Java에서 제공하는 것이 아닌 Spring Framework에서 제공한다.

 

 @PostMapping(
    value = "test",
    produces = "application/json",
    consumes = "multipart/form-data"
  )
  private ResponseEntity<Response> test(
    @RequestBody MultiValueMap<String, String> data
  ) {
    return null;
  }

 

2. 위의 코드 추가 후 spring swagger가 있다면 server실행 후 swagger 확인.

  - 확인 해보면 Request Body가 multipart/form-data로 설정 되어 있을것임.

 

 

느낀점

Spring Boot에서 API에 form-data 적용은 정말 간단하다 코드 몇줄만 추가하면 알아서 타입을 바꿔주니.. 

  

반응형