<%@ page contentType = "text/html; charset=euc-kr" %>
<html>
<head></head>
<body>
<form action="dddd.jsp" method="post"
enctype="multipart/form-data">
파일1: <input type="file" name="file1"><br>
파일2: <input type="file" name="file2"><br>
파일1: <input type="file" name="file3"><br>
param1: <input type="text" name="param1"><br>
param2: <input type="text" name="param2"><br>
param3: <input type="text" name="param3"><br>
<input type="submit" value="전송">
</form>
</body>
</html>
-----------------------------------------------------------------------------------------
<%@ page contentType = "text/html; charset=euc-kr" %>
<%@ page import = "org.apache.commons.fileupload.FileUpload" %>
<%@ page import = "org.apache.commons.fileupload.DiskFileUpload" %>
<%@ page import = "org.apache.commons.fileupload.FileItem" %>
<%@ page import = "java.io.File" %>
<%@ page import = "java.io.BufferedInputStream" %>
<%@ page import = "java.io.BufferedOutputStream" %>
<%@ page import = "java.io.FileOutputStream" %>
<%@ page import = "java.io.IOException" %>
<html>
<head><title>파일 업로드 처리</title></head>
<body>
<%
if (FileUpload.isMultipartContent(request)) {
String temporaryDir = "/root/Download/";
DiskFileUpload fileUpload = new DiskFileUpload();
fileUpload.setRepositoryPath(temporaryDir);
// 최대 1메가까지 업로드 가능
fileUpload.setSizeMax(1024*1024);
// 한번에 100K 까지는 메모리에 저장.
fileUpload.setSizeThreshold(1024*100);
/* FileItem의 리스트 */
java.util.List fileItemList = fileUpload.parseRequest(request);
for (int i = 0 ; i < fileItemList.size() ; i++) {
FileItem fileItem = (FileItem) fileItemList.get(i);
if (fileItem.isFormField()) {
// 파일 이외의 파라미터
%>
폼 파라미터: <%= fileItem.getFieldName() %>=<%= fileItem.getString() %><br>
<%
} else {
// 파일인 경우
%>
파일: <%= fileItem.getFieldName() %>=<%= fileItem.getName() %>
(<%= fileItem.getSize() %> bytes)<br>
<% if (fileItem.isInMemory()) { %>
"메모리에 저장" <br>
<% } else { %>
"디스크에 저장" <br>
<% } %>
<%
// 업로드한 파일이 존재하는 경우
if ( fileItem.getSize() > 0) {
int idx = fileItem.getName().lastIndexOf("\\");
if (idx == -1) {
idx = fileItem.getName().lastIndexOf("/");
}
String fileName = fileItem.getName().substring(idx + 1);
try {
File uploadedFile = new File("/root", fileName);
fileItem.write(uploadedFile);
} catch(IOException ex) {
// 예외 처리
}
}
}
}
} else {
%>
인코딩 타입이 multipart/form-data가 아님.
<%
}
%>
</body>
</html>