restAPI 스프링부트 이미지 업로드 질문입니다.
현재 쇼핑몰을 개발하면서 게시글에 이미지,비디오, 첨부파일 업로드 부분을 개발하고있는데
어떤 방식을 사용할지 고민입니다.
서버는 s3를 사용하는걸로 결정한 상황입니다. (이미지 서버와 비디오 서버 2개 씀)
1. 파일을 s3 서버에 올리고 프론트가 이미지 링크를 리턴 받는다
2. 리턴 받은 파일 링크를 db에 저장한다
에서 리턴 받은 링크를 어디에 저장할지가 고민입니다..
질의응답 기능, 상품 리뷰기능, 상품 등록 기능 이렇게 세가지 쪽에서 첨부파일 첨부 기능이 사용될 것 같습니다.
예를들어 1.jpg라는 이미지파일 한개, 2.mp4
방법1.
post 엔티티에 첨부파일 컬럼을 만들어서 json으로
[ {type:"image", url :"http"},
{type:"video", url :"http m3n8"},
{type:"text" ,data :"hihihihih"},
]
같은 방법으로 저장한다.
방법2.
post 엔티티와 첨부파일 entity 두개를 만들어
post 엔티티에 OneToMany 조인한다
어떤 방법이 더 좋을지 추천 부탁드립니다.
2번 추천드립니다
업로드는 어떻게 할거에요? 멀티파트?
업로드는 멀티파트로 할 것 같습니다. 답변감사합니다. 좋은 저녁되세요~
근데 사진을 여러개 올린다고 하면 멀티파트말고 다른방법이 있을 수 있나요?
멀티파트는 임시로 파일을 디스크에 쓰기때문에, 업로드 할 파일이 많거나 용량이 크면 사용하지 않는게 좋습니다 octet stream 추천드려요
오우 답변감사합니다!!
이런 업로드 방식도 딥하게 파고들어서 원리를 이해하고 사용하는 모습을 어필하면 면접에 플러스 점수가 있습니다