///////////////////////////////////////////////////////////////////////////////////////
MultiFileUpload.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"%>
<html>
<body>
1. 여러 개의 파일을 업로드 하는 예제입니다.<br>
2. 기본 경로는 "/" 입니다.<br>
3. 업로드가 완료되면 반드시 FileUpload.dispose() 메소드를 호출해서 자원을 해제해야 합니다.<br>
<br>
<form action="MultiFileProcess.jsp" method="post" enctype="multipart/form-data">
<input type="file" name="upfile"><br>
<input type="file" name="upfile"><br>
<input type="file" name="upfile"><br>
<input type="file" name="upfile"><br>
<input type="file" name="upfile1"><br>
<input type="file" name="upfile2"><br>
<input type="file" name="upfile3"><br>
<input type="submit" value="전송">
</form>
</body>
</html>
///////////////////////////////////////////////////////////////////////////////////////
MultiFileProcess.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"%>
<%@page import="java.util.Iterator"%>
<%@page import="java.util.Enumeration"%>
<%@page import="java.io.*"%>
<%@page import="java.util.Map"%>
<%@page import="devpia.dextupload.*"%>
<%@page import="java.io.*"%>
<%
PrintWriter w = response.getWriter();
FileUpload fileUpload = new FileUpload(request, response);
try {
String strPath = request.getRealPath("/");
// 정품 혹은 평가판의 만료일을 판단하기 위한 라이센스 파일의 위치를 지정합니다.
fileUpload.setLicenseFilePath(strPath + File.separator + "dextuploadj.config");
fileUpload.UploadStart(strPath);
w.println("getFileItemValues(\"upfile\") 를 사용해서 중복된 모든 파일 아이템을 가져온다.<br>");
FileItem[] value = fileUpload.getFileItemValues("upfile");
for (int i = 0; i < value.length; i++)
{
if(value[i] != null)
{
if(value[i].IsUploaded())
{
value[i].Save(strPath, true);
w.println(value[i].getLastSavedFilePath() + " 저장되었습니다. <br>");
}
else
{
w.println("파일이 업로드 되지 않았습니다.<br>");
}
}
}
w.println("<br>");
w.println("getFileItemNames() 를 사용해서 모든 file 타입의 폼의 이름을 가져온다.<br>");
Enumeration names = fileUpload.getFileItemNames();
while(names.hasMoreElements())
{
w.println((String)names.nextElement() + "<br>");
}
w.println("<br>");
}
catch (DEXTUploadException ex) {
w.println(ex.getMessage());
}
catch (Exception ex) {
w.println(ex.getMessage());
}
finally {
// 종료 시에 반드시 자원을 해제해야 한다.
// 그렇지 않으면 임시 파일이 삭제되지 않고 남을 수 있다.
fileUpload.dispose();
}
%>
/////////////////////////////////////////////////////////////////////////////////////// http://www.devpia.com/MAEUL/Contents/Detail.aspx?BoardID=4053&MAEULNO=518&no=57&page=1 |