2009년 02월 05일
multipart을 이용한 파일업로드
파일업로드를 위해서는 라이브러리를 추가해야합니다.
multipart.zip
설치경로는 '\프로젝트명\WebContent\WEB-INF\lib'에 하거나, jre 라이브러리 경로로
복사해도 무방합니다.
result.jsp
form타입 'multipart/form-data'를 할때는 request.getParameter()로 값을 받을 수 없기 때문에,
꼭 MultipartReques를 선언해주고, multi.getParameter()을 이용해야한다.
사용방법은 동일하다.
multipart.zip
설치경로는 '\프로젝트명\WebContent\WEB-INF\lib'에 하거나, jre 라이브러리 경로로
복사해도 무방합니다.
<form name="form" method="post" enctype="multipart/form-data" action="result.jsp">
<input type="file" name="filename" value="multipart">
<input type="submit">
</form>
result.jsp
<%@ page import="com.oreilly.servlet.MultipartRequest" %>
<%@ page import="com.oreilly.servlet.multipart.DefaultFileRenamePolicy" %>
<%
String savePath = null; // 경로
String fileName = null; // 파일이름
try {
// 업로드 경로
javax.servlet.ServletConfig config = getServletConfig();
javax.servlet.ServletContext app = config.getServletContext();
savePath = app.getRealPath("/upload/");
File file = null;
// 폴더 생성(업로드 폴더)
file = new File(savePath);
if(!file.exists()) {
file.mkdir();
}
// 파일 업로드
int sizeLimit = 10 * 1024 * 1024; //10M
MultipartRequest multi = new MultipartRequest(reqest
,savePath
,sizeLimit
,"utf-8"
,new DefaultFileRenamePolicy());
fileName = multi.getFilesystemName("filename").toString();
if(fileName == null) { // 파일이 업로드 되지 않았을때
out.print("파일 업로드 되지 않았음");
} else { // 파일이 업로드 되었을때
out.print("업로드경로 : " + savePath + "<BR>");
out.print("업로드파일 : " + fileName + "<BR>");
} // end if
} catch(Exception e) {
out.print("예외");
}
%>
form타입 'multipart/form-data'를 할때는 request.getParameter()로 값을 받을 수 없기 때문에,
꼭 MultipartReques를 선언해주고, multi.getParameter()을 이용해야한다.
사용방법은 동일하다.
이 글과 관련있는 글을 자동검색한 결과입니다 [?]
- form타입이 'multipart/form-data'일때 request.getParameter()로 값 받기 by ShiinaTsu
- jsp 업로드 (cos.jar) by want813
- Prototype Javascript Framework - Form by 熱血광짱
- Spring MVC 2.5을 활용한 파일업로드 by 정상혁
- Servlet Init use Java by 온스토리닷넷
# by ShiinaTsu | 2009/02/05 16:18 | Java & Jsp | 트랙백 | 덧글(1)




