파일 업로드

파일 업로드

1. cos.jar 붙여넣기

2. 업로드 버튼이 있는 jsp의 수정

파일 업로드를 할 때는 enctype이 “multipart/form-data” 여야 한다.

따라서 업로드 버튼이 존재하는 jsp에서, form 태그 안에 enctype=”multipart/form-data”를 써넣어야 한다.

ex)

<form method=”post” action=”../databoard/databoard_insert_ok.jsp” name=”board_frm” enctype=”multipart/form-data”>

    <input type=”file” name=”fileobj“/>

</form>

만약 파일을 여러 개 업로드할 수 있게 하려면 multiple=”multiple”을 써넣는다. 또한 name 뒤에 대괄호를 넣어서 배열 처리한다.

<form method=”post” action=”../databoard/databoard_insert_ok.jsp” name=”board_frm” enctype=”multipart/form-data”>

    <input type=”file” multiple=”multiple” name=”fileobj[]”>

</form>

3. 파일이 실제 업로드되는 부분을 구현한 jsp

(databoardinsert_ok.jsp)

아래 소스는 파일을 원하는 폴더 안에 업로드시켜준다.

<%@ page language=”java” contentType=”text/html; charset=EUC-KR”
    pageEncoding=”EUC-KR”%>
<%@ page import=”com.oreilly.servlet.*” %><%–cos.jar 내부에 존재–%>
<%@ page import=”com.oreilly.servlet.multipart.*” %><%–cos.jar 내부에 존재–%>
<%
 //멀티파트: 파일업로드 라이브러리
 String path=”c:\\download”;
 int size=1024*1024*100;//100메가
 String enctype=”EUC-KR”;
 MultipartRequest multipartRequest = new MultipartRequest(request,path,size,enctype,new DefaultFileRenamePolicy());

  //DefaultFileRenamePolicy(): 파일명이 중복되면 바꿔줌

String fileName = multipartRequest.getFilesystemName(“fileobj”);   

if (fileName==null) {

          System.out.println(“파일이 업로드 되지 않았습니다”);

}
%>