TOC·파일 전송 방식·FileUpload API·자료실의 파일 저장·다운로드
3개의 잘 파일을 먼저 라이브러리에 붙여두는 파일 전송을 위한 FORM 설정, POST 방식으로 enctype을 multipart/form-data로 설정 – type 속성이 파일인 <input> 태그로 파일 선택
![](https://blog.kakaocdn.net/dn/cjvuHM/btqTDJrjdDW/ZSciNH7b6cUQVIk4mpNKgk/img.png)
3개의 잘 파일을 먼저 라이브러리에 붙여두는 파일 전송을 위한 FORM 설정, POST 방식으로 enctype을 multipart/form-data로 설정 – type 속성이 파일인 <input> 태그로 파일 선택
3개의 잘 파일을 먼저 라이브러리에 붙여두는 파일 전송을 위한 FORM 설정, POST 방식으로 enctype을 multipart/form-data로 설정 – type 속성이 파일인 <input> 태그로 파일 선택
![](https://mblogthumb-phinf.pstatic.net/MjAxOTA4MTNfMTk5/MDAxNTY1NjYyNzAwOTQw.EUoAYArb_ZjCzNnwq6daO8rou4MnBIGX_240u86I2wIg.B_EOHQLMKu9aUftKLF0lI7jtGLFfPOabcyieDstIGLIg.JPEG.ridesafe/JSP.jpg?type=w800)
<%@page contentType=”text/html;charset=UTF-8″%><!DOCTYPE html><html><head><title><head><head><b>애플리케이션/x-www-form-urlencoded<b><formaction=”uploadData.jsp”method=”post”><br>키 워드:<input type=”text”name=”age”><br>키 워드:<input type=”file”><br><input type=”submit”><p>키 워드:<input type=”submit”><b>키 워드:<b>jsp”method=”post”enctype=”party/form-data”><br>파일:<input type=”text”name=”age”>파일:<br>파일:<input type=”input type=”file”><br><input type=”submit= “vallementalput”>파일>파일:<inpherminaldathermathermathermany>파일>파일>파일>치<sionallementalle>
<form action=”uploadData.jsp” method=”post”> 름이 : : <input type=”text” name=”name”><br> 일파 : <input type=”text” name= “age”> <br> <input type= “file” name= “report”><br> <input type= “download” value= “methodufficipsoesktopsignale”></form><form><form action=”uploadData.jsp” method=”post”> 름이 : : <input type=”text” name=”name”><br> 일파 : <input type=”text” name= “age”> <br> <input type= “file” name= “report”><br> <input type= “download” value= “methodufficipsoesktopsignale”></form><form>포스트 방식 뒤에 enctype=”multipart/form-data”를 그대로 받으면이처럼 파일 이름만 출력되므로 주의해야 할 일 FileUpload API·multipart/form-data로 송신된 데이터 처리·http://commons.apache.org/fileupload/에서 다운로드 – commons-fileupload-1.2.jar•추가 필요 라이브러리 – Commons IO– http://commons.apache.org/io/사이트에서 다운로드 – commons-io-1.3.2.jarFileUpload API을 이용한 업로드 데이터 처리 일반 파라미터:파라메타 이름, file name, content-type내용- 이렇게 다양한 것이 전달되는·FileItem.write(FileItem.getInputStream()메소드로 요청한 입력 스트림에서 바이트 데이터를 읽고 FileOutputStream을 사용하고 파일에 출력하는 방법·FileItem.get()메소드로 요청한 바이트 배열을 FileOutputStream을 사용하고 파일에 출력하는 방법<%@ page contentType=”text/html;charset=UTF-8″%><html><head><title>マルチパート≪/subject><head≫<formaction=”fileupload_Pro.jsp” method=”post” enctype=”part/form-data”> text1:<input type=”text1″ /> <br/>ファイル1:<input type=”file1 ” />ファイル2:<input type= “file2”> <input type= “text text 1><brice text1><brice text1><%@ page contentType=”text/html;charset=UTF-8″%><html><head><title>マルチパート≪/subject><head≫<formaction=”fileupload_Pro.jsp” method=”post” enctype=”part/form-data”> text1:<input type=”text1″ /> <br/>ファイル1:<input type=”file1 ” />ファイル2:<input type= “file2”> <input type= “text text 1><brice text1><brice text1><%@ page contentType=”text/html;charset=UTF-8″%><html><head><title>マルチパート≪/subject><head≫<formaction=”fileupload_Pro.jsp” method=”post” enctype=”part/form-data”> text1:<input type=”text1″ /> <br/>ファイル1:<input type=”file1 ” />ファイル2:<input type= “file2”> <input type= “text text 1><brice text1><brice text1>=>프레임워크가면 spring 4줄로 바뀐다 웃음=>프레임워크가면 spring 4줄로 바뀐다 웃음이렇게 들어가는 자료실 – 업로드한 파일 저장 방식, 업로드한 파일 저장 방식 2가지 – DB의 BLOB에 저장 – 파일 시스템에 저장, 이 경우 저장할 때 사용하는 파일의 이름은 현재 시간 등의 값을 이용하여 생성 – 게시판 번호와 첨부된 순서 번호를 함께 사용하기도 한다.실제 파일명은 DB에 저장자료실 – 다운로드 구현 및 다운로드 구현시 고려사항 – 응답 콘텐츠 유형은 application/octet-stream-Content-Disposition 헤더에 파일명 지정 및 파일명 설정시 ISO-8859-1로 인코딩하여 인코딩한다.•실제 파일 전송 – response.get Output Stream()에서 구한 Output Stream으로 파일 데이터 출력