설명
폴더 구조를 포함하여 파일을 업로드한다.
서버에서는 'DEXTUploadX5_Folder' 이름으로 폴더 경로를 얻을 수 있다.
# 서버 측 코드
// 파일 콜렉션 객체를 얻는다.
List<FileItem> items = dextnj.getFileItems();
// 폴더 경로를 가진 콜렉션 객체를 얻는다. items.size() == folders.size()
List<FormItem> folders = dextnj.getFormItems("DEXTUploadX5_Folder");
FileItem file = null;
FormItem form = null;
File dir = null;
for (int i = 0; i < items.size(); i++) {
file = items.get(i);
if (file.isEmpty()) continue;
form = folders.get(i);
// 폴더 정보를 포함하여 저장될 경로를 얻는다.
dir = new File(env.getDefaultRepository(), form.getValue());
// 폴더 구조를 생성한다.
if (dir.exists() == false) dir.mkdirs();
// 대상 폴더로 파일을 저장한다.
file.save(dir.getCanonicalPath());
}
폴더 구조 업로드 주의 사항은 다음과 같다.
DEXTUploadX5 3.6.0.0 버전 이상만 지원한다.
폴더 구조 업로드는 데스크탑 크로미움 계열 브라우저(80버전 이상), Firefox(50 버전 이상), Safari(12 버전 이상)만 지원한다.
파일이 없는 폴더는 제외된다.
예제