본문으로 바로가기

JSP 파일 업로드 하는법

category 프로그래밍/ JSP 2018. 9. 16. 21:01


우리가 웹서버에 파일을 저장해야하는데 이것을 쉽게 할수있도록 도와주는 라이브러리가 존재합니다.

오늘은 웹서버에 저장하는법을 포스팅하겠습니다.


1. http://www.servlets.com/ 에 접속합니다.

   -> 좌측 com.oreilly.servlet 클릭



2. cos-26Dec2008.zip 다운로드


3.  다운받은 파일의 lib 폴더안에 cos.jar 파일이 존재하는데 이것을 자신이 하고자 하는 프로젝트에 넣어줍니다.





4. 프로젝트에 파일을 업로드할 폴더를 생성합니다.





5. 파일을 업로드 테스트할 jsp 파일을 생성합니다. fileform.jsp , fileFormOk.jsp 파일 두개 생성하겠습니다.


<fileform.jsp>


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<%@ 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">
        파일:<input type="file" name="file"><br/>
        <input type="submit" value="File Upload">
    </form>
 
</body>
</html>
cs



<fileFormOk.jsp>


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
<%@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;
    String file = "";
    String oriFile="";
 
    try{
        MultipartRequest multi = new MultipartRequest(request,path,size,"EUC-KR",new DefaultFileRenamePolicy());
        
        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>
cs


6. fileform.jsp 을 실행시키고 파일을 업로드 해보겠습니다.


잘 되시나요? ㅎ 분명 파일은 업로드 했는데 업로드한 파일이 프로젝트에 없는것을 볼수 있습니다.

파일은 프로젝트(2)가 아닌 서버(1)에 저장이 됩니다.