Java 파일업로드

youngsung·2024년 3월 12일
0

JAVA

목록 보기
2/3

파일업로드


파일업로드를 하기위해서는 우선 form 태그에서 enctype을 변경을 해줘야한다.

 enctype="application/x-www-form-urlencoded"

default값으로 지정되어있는 값이다.

 enctype="multipart/form-data"

이런식으로 enctype을 변경시켜줘야한다.
이런식으로 변경을 주었다면, 다음으로는 Service단으로 넘어가서 작성해주면 된다.

int fileSize = 1024 * 1024 * 100;
String realPath = req.getServletContext().getRealPath("/goods/images");

이런식으로 파일사이즈와 파일이 저장될 경로를 설정해준후,
이전 html단에서 multipart-form-data로 데이터를 보내주니까 받을때도 multipart로 받아야한다.

MultipartRequest multi = new MultipartRequest(req, realPath, fileSize, "utf-8", new DefaultFileRenamePolicy());

이렇게 multi로 받아주면 기존에 req.getParameter 이렇게 받아왔던 데이터를
multi.getParameter 이렇게 변경을 시켜줘야한다.
해서 받아올 준비가 끝났다면, 저장된 파일명과 전송된 파일명 이렇게 두가지로 나누어서 받아준다.

String mainImageStoreName = multi.getFilesystemName("mainImage");
String mainOriginalName = multi.getOriginalFileName("mainImage");

이후 우리가 사용해야할 파일명은 getFilesystemName가 될 것 이다.
이런식으로해서 DB에 저장해서 사용하면 된다.

profile
To Infinity and Beyond

0개의 댓글