파일 업로드
웹 브라우저(클라이언트)에서 서버로 파일을 전송하여 서버에 저장하는 것
*파일 업로드시 form 태그 내에서의 규칙
1) method 속성은 POST방식
2) enctype 속성은 multipart/form-data로 설정
3) action 속성은 파일 업로드를 처리할 JSP 파일로 설정
4) input 태그의 type를 file로 설정
파일 업로드 처리 방법
① MultipartRequest
웹 페이지에서 서버로 업로드되는 파일 자체만 다루는 클래스
* MultipartRequest 메소드의 종류
메소드 |
유형 |
설명 |
getContentType(String name) |
String |
업로드된 파일의 콘텐츠 유형 반환 |
getParameter(String name) |
String |
이름이 name인 값 전달 받음 |
getParameterNames() |
java.util.Enumeration |
이름을 Enumeration 객체 타입으로반환 |
getFile(String name) |
java.io.File |
서버에 업로드된 파일 객체 반환 |
getFileNames() |
java.util.Enumeration |
input태그의 type이 file인것 반환 |
getFilesystemName(String name) |
String |
서버에 업로드된 파일명 반환 |
getOriginalFileName(String name) |
String |
사용자가 업로드한 실제 파일명 반환 |
② Commons-FileUpload
서버의 메모리상에서 파일 처리가 가능하도록 지원
[파일을 업로드 하려면]
1) DiskFileUpload 객체 생성
2) 웹 브라우저가 전송한 multipart/form-data 유형의 요청 파라미터를 가져옴
3) FileItem 클래스의 메소드를 사용하여 분석 및 처리 후 파일 업로드
[FileItem 클래스로 업로드 파일을 저장하는 방법]
- write() 메소드 사용
- getInputStream() 메소드를 사용하여 바이트 데이터를 가져와 FileOutputStream()을 사용하여 파일에 출력
- get() 메소드로 가져온 바이트 배열을 FileOutputStream을 사용하여 파일 출력
연습문제
01. 파일 업로드를 위한 form 태그 내에 반드시 설정해야 하는 기법은 무엇인가?
<form method="POST" enctype="multipart/form-data" action="파일업로드를 처리할 jsp파일">
<input type="file">
02. 파일을 서버에 업로드하는 처리 기법에 대해 간단히 설명하시오.
1) MultipartRequest : 웹 페이지에서 서버로 업로드되는 파일 자체만 다루는 클래스
2) Commons-FileUpload : 서버의 메모리상에서 파일 처리가 가능하도록 지원
'7. 교재 > 7_3 쉽게 배우는 JSP 웹 프로그래밍' 카테고리의 다른 글
[쉽게 배우는 JSP 웹 프로그래밍] 09. 다국어 처리 (2) | 2020.02.06 |
---|---|
[쉽게 배우는 JSP 웹 프로그래밍] 08. 유효성 검사(Validation) (0) | 2020.02.06 |
[쉽게 배우는 JSP 웹 프로그래밍] 06. 폼 태그 (3) | 2020.02.06 |
[쉽게 배우는 JSP 웹 프로그래밍] 04. 액션 태그 (0) | 2020.02.06 |
[쉽게 배우는 JSP 웹 프로그래밍] 03. 디렉티브 태그 (0) | 2020.02.06 |