728x90
반응형
아주 간단하게 컨트롤러에서 코드 한줄로 이미지 등록을 해볼 것이다.
UploadUtil 클래스
util 패키지를 생성해서 UploadUtil 클래스를 만들어 준다.
이후 uploadFile 메소드와 multiFileUpload 메소드를 만들어 주면서 위 코드는 main이미지, 밑 코드는 sub이미지 코드이다.
메소드의 기본 성질은 default로 같은 패키지가 아니면 공유를 하지 않는다.
그래서 static을 이용해 다른 패키지에서도 사용할 수 있도록 붙여줘야한다.
AdminController 컨트롤러
컨트롤러에서 UploadUtil 클래스에 있는 메소드 uploadFile과 multiFileUpload 메소드를 불러와 변수를 넣어주면 단 두줄만에 이렇게 컨트롤러에서 이미지 첨부를 할 수 있게 된다.
reg_item.html
UploadUtil 클래스
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 | package com.study.shop.util; import java.io.File; import java.util.UUID; import org.springframework.web.multipart.MultipartFile; public class UploadUtil { // 단일 파일 업로드 메소드 public static void uploadFile(MultipartFile img) { if(!img.isEmpty()) { String originFileName = img.getOriginalFilename(); String uuid =UUID.randomUUID().toString(); String extension = originFileName.substring(originFileName.lastIndexOf(".")); String attachedFileName = uuid + extension; try { File file = new File(ConstVariable.UPLOAD_PATH + attachedFileName); img.transferTo(file); }catch (Exception e) { e.printStackTrace(); } } } // img는 실제로 첨부되는 파일 MutipartFile이 자료형 //다중 파일 업로드 메소드 public static void multiFileUpload(MultipartFile[] imgs) { for( MultipartFile img : imgs) { uploadFile(img); } } } | cs |
이걸 끌어다 쓴 것이다.
728x90
반응형
'✨ Back-end > Spring-Boot' 카테고리의 다른 글
[Spring] 쇼핑몰 - 22 등록된 상품 관리 조회(SELECT) (0) | 2023.03.30 |
---|---|
[Spring] 쇼핑몰 - 21 상품 이미지 등록 쿼리 (0) | 2023.03.30 |
[Spring] 쇼핑몰 - 19 상품 이미지 등록 SubImg 하드코딩 (0) | 2023.03.30 |
[Spring] 쇼핑몰 - 18 상품 이미지 등록 MainImg 하드코딩 (0) | 2023.03.30 |
[Spring] 쇼핑몰 - 17 상품 등록(INSERT) (0) | 2023.03.29 |
댓글