http://www.servlets.com 접속 후 좌측의 com.oreilly.servlet 클릭
밑에 압축파일을 다운로드 합니다.
압축푼 폴더를 보면 lib폴더안에 cos라는 것을 복사합니다.
이클립스를 열고 Webcontent-----WEB-INF---lib폴더 밑에 복사합니다.
그리고 webContent 안에 fileFolder라는 것을 통해 보관하는것을 만들어줍니다.
<%@ page language="java" contentType="text/html; charset=EUC-KR"
pageEncoding="EUC-KR"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=EUC-KR">
<title>Insert title here</title>
</head>
<body>
<form action="fileFormOk.jsp" method="post" enctype="multipart/form-data">// 엔티타입의 속성을 mulipart/form-data로 주어서 서버로 전송한다.
파일 : <input type="file" name="file"><br />
<input type="submit" value="File Upload">
</form>
</body>
</html>
<%@page import="java.util.Enumeration"%>
<%@page import="com.oreilly.servlet.multipart.DefaultFileRenamePolicy"%>
<%@page import="com.oreilly.servlet.MultipartRequest"%>
<%@ page language="java" contentType="text/html; charset=EUC-KR"
pageEncoding="EUC-KR"%>
<%
String path = request.getRealPath("fileFolder");
int size = 1024 * 1024 * 10; //10M
String file = "";
String oriFile = "";
try{
MultipartRequest multi = new MultipartRequest(request, path, size, "EUC-KR", new DefaultFileRenamePolicy());
객체 경로 사이즈, kr, 동일한 이름이 있을때 어떻게 할것인지...
Enumeration files = multi.getFileNames(); //파일이여러개있을때 어떻게 할것인가
String str = (String)files.nextElement(); //파일의 이름을 스트림으로 저장
file = multi.getFilesystemName(str); //실제이름
oriFile = multi.getOriginalFileName(str); //중복되었을때의이름
} catch (Exception e) {
e.printStackTrace();
}
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=EUC-KR">
<title>Insert title here</title>
</head>
<body>
file upload success!
</body>
</html>
실제 파일저장된 경로는 아파치 설치되어있는곳에 wtpwebapps---프로젝트이름---file Folder에 있다.
'프로그래밍 > jsp' 카테고리의 다른 글
JSTL (506) | 2017.12.31 |
---|---|
EL(Expression Language) (477) | 2017.12.19 |
19.데이터베이스-3 (회원가입 및 회원정보 프로그래밍) (468) | 2017.12.09 |
20. 커넥션풀(DAO,DTO, PrepaaredStatement, 커넥션풀) (487) | 2017.12.08 |
데이터베이스-2 (1211) | 2017.10.27 |