webtest/pdsTest/upLoadTestOk.jsp
[ 소스 ]
[ 결과창 ]
<%@page import = "java.io.File" %> <!-- 파일 복사 , 삭제 , 등 -->
파일업로드에 필요한 import
<%@ page import="com.oreilly.servlet.MultipartRequest"%> 파일 업로드 하는 클래스 파일
<%@ page import="com.oreilly.servlet.multipart.DefaultFileRenamePolicy"%> 중복된 파일을 숫자 1,2,3,4로 구분해 주는 파일
맨처음 파일 업로드시 역할을 하는것 <%@ page import="com.oreilly.servlet.MultipartRequest"%>
같은 파일을 한번만 업로드 하는것이 아니기때문에 ex)test.txt 를 한번더 업로드 한다고 가정했을경우
test.txt라는 파일은 이미 서버에 있는데 그럴때 뒤에 숫자를 붙인다던가 해서 서버에 저장해서 처리해줌 test_1
그 역할을 하는것이 <%@ page import="com.oreilly.servlet.multipart.DefaultFileRenamePolicy"%>
[확인 ] upLoadTest.jsp 로 실행
이름이 같은 파일이 없을때
test.txt 파일 업로드
\works\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\webtest 경로에도 저장되는것을 볼 수 있다.
이름이 동일할 파일 있을 때 test.txt 파일 업로드 -> 자동으로 test1.txt로 저장이 되고
파일명은 test.txt , 실제 파일명은 test1.txt로 업로드 되는것을 볼 수 있다 저장된 파일은 test1.txt이다.
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
[Http 클라이언트 가 받을때 인코딩 방식] 웹브라우저로 받아볼때 UTF-8로 받아서 보겠다.
String diretory = application.getRealPath("/pdsTest/data"); // 파일이 저장될 실제 파일 경로
아래 경로에서 현재 webtest 프로젝트를 진행중이기 때문에 자동으로[webtestpath] / 가 webtest가 된다.
int maxSize = 1024 *1024 * 10; // 최대 10 Mbte 허용
String encoding ="utf-8";// 한글 파일명 인코딩방법을 설정
전송타입 , 저장 디렉토리 , 최대크기 , 인코딩 , 옵션[동일파일명 처리 클래스 등]
중요 !!
MultipartRequest multipartRequest = new MultipartRequest(request,diretory,maxSize,encoding, new DefaultFileRenamePolicy());
(전송타입 , 저장 디랙토리 , 최대 크기 , 코드 변환방식 , 옵션 (동일 파일명 처리 클래스 등 )
MultipartRequest = 파일 업로드 하는 java 클래스 파일 import 하고 사용한다.
String fileName = multipartRequest.getOriginalFileName("file"); // 실제 업로드하는 파일명 [실제 파일명]
String fileRealName = multipartRequest.getFilesystemName("file"); //업도드 폴더에 저장된 실제 파일명
'Web > Spring , Springboot , JPA' 카테고리의 다른 글
파일 자료실 downLoad.jsp (0) | 2020.05.22 |
---|---|
파일 자료실 - 개념 설명 (0) | 2020.05.20 |
파일 자료실 업로드구현 - webTest /upLoadTest.jsp (0) | 2020.05.20 |
Servlet 선처리, 후처리 @PostConstruct , @PreDestroy (0) | 2020.05.19 |
서블릿 - 라이프사이클(생명주기) Test (0) | 2020.05.19 |