본문 바로가기
카테고리 없음

8/12 스프링 이미지 올리기 - dto구조체에 파일 함께 db로 저장

by 흥뷰자 2022. 8. 13.

🔎 최소한의 폼과 컨트롤러를 통해 이미지파일만 넘겨보는 테스트를 한다.

== dto가 아닌 MultipartFile 타입으로 주고 받는 구조를 짠다. 

이미지를 올릴 때는 컨트롤러에서 RequestMapping으로 처리해준다.

@RequestMapping(value = "/product/register", method = RequestMethod.GET)
public void register() {
   log.info("폼 요청");
}

@RequestMapping(value = "/product/register", method = RequestMethod.POST)
public String register(MultipartFile img) {
}

form에는 method="post" enctype="multipart/form-data"

input type="file"

input type="submit"

input태그를 통해 컨트롤러로 파일을 넘겨주려면 img를 넘기는 데이터 MultipartFile img로 잘 넘겨주어야 한다 ✍️✍️

<form action="/product/register" method="post" enctype="multipart/form-data" >
   
   <div class="form-group">
      <input type="file" name="img" />
   </div>
   <input type="submit" value="저장"/>
</form>

 

컨트롤러에서 폼에 있는 이미지 정보가 넘어오는지 먼저 테스트

    log.info(img.getContentType());

🔎 이 테스트가 통과 되면 이제 MultipartFile타입이 아닌 DTO 타입으로도 다른 데이터들과 함께도 받아본다.

DTO로 넘겼을 때 값이 넘어왔는지 아무거나 불러본다.   

System.out.println(dto.getImg().getOriginalFilename());

🔎 그 다음으로는 파일이 넘어온 후 저장할 경로를 설정하고 db로 저장하도록 설계한다.

 

 

🔎🔎🔎🔎🔎🔎🔎 

 

댓글