[Jsp] 웹에서 파일 업로드하기

이번 포스팅에서는 파일 웹상에서 파일 업로드 하는방법에 대해 포스팅하겠습니다.

우선 파일 업로드를 하기 위해서는 cos.jar파일이 필요합니다. 

cos.jar

위에 첨부되어있는 cos.jar파일을

파일업로드

위와 같이 WEB-INF -> lib 폴더 안에 넣어줍니다.

아래는 웹페이지에서 파일 업로드하는 예제입니다.


웹에서 파일 업로드하기

fileUploadForm.jsp 

<body>
<form action="fileUpload.jsp" method="post" enctype="multipart/form-data">
<table align="center" border="1">
<tr>
    <td colspan="2">파일 업로드 폼</td>
</tr>
<tr>
    <td>올린 사람:</td>
    <td><input type="text" name="name"></td>
</tr>
<tr>
    <td>제목:</td>
    <td><input type="text" name="subject"></td>
</tr>
<tr>
    <td>파일명1:</td>
    <td><input type="file" name="fileName1"></td>
</tr>
<tr>
    <td>파일명2:</td>
    <td><input type="file" name="fileName2"></td>
</tr>
<tr>
    <td colspan="2"><input type="submit" value="전송"></td>
</tr>
</table>
</body>


fileUpload.jsp

<%
String uploadPath=request.getRealPath("upload");
	
int size = 10*1024*1024;
String name="";
String subject="";
String filename1="";
String filename2="";
	
try{
    MultipartRequest multi=new MultipartRequest(request,uploadPath,size,"euc-kr",new DefaultFileRenamePolicy());
		
    name=multi.getParameter("name");
    subject=multi.getParameter("subject");
		
    Enumeration files = multi.getFileNames();
    String file1 = (String)files.nextElement();
    filename1 = multi.getFilesystemName(file1);
    String file2 = (String)files.nextElement();
    filename2=multi.getFilesystemName(file2);

}catch(Exception e){
    e.printStackTrace();
}
%>
<body>
<form name="filecheck" action="fileCheck.jsp" method="post">
    <input type="hidden" name="name" value="<%=name %>">
    <input type="hidden" name="subject" value="<%=subject %>">
    <input type="hidden" name="filename1" value="<%=filename1 %>">
    <input type="hidden" name="filename2" value="<%=filename2 %>">
</form>
<a href="#" onclick="javascript:filecheck.submit()">업로드 확인 및 다운로드 페이지이동 </a>
</body>


fileCheck.jsp

<%
request.setCharacterEncoding("euc-kr");
String name = request.getParameter("name");
String subject = request.getParameter("subject");
String filename1 = request.getParameter("filename1");
String filename2 = request.getParameter("filename2");
%>
<body>
올린사람 : <%=name %><br/>
제목 : <%=subject %><br/>
파일명1 : <a href="upload/<%=filename1%>"><%=filename1%></a><br/>
파일명2 : <a href="upload/<%=filename2%>"><%=filename2%></a><br/>
</body>

그런뒤 위와 같이 jsp파일을 3개 만들어 해당코드를 붙여넣어줍니다.

파일업로드

실행방법은 FileUploadForm을 띄우고


파일업로드

다음 페이지에서 바로 보이는 a태그를 클릭해주시면 됩니다


댓글(2)

  • g
    2019.08.02 20:30

    안녕하세요
    포스팅이 공부하는데 도움 많이 됐습니다.
    입력값이 출력이 안되는데 뭐가 문제일까요?ㅠㅠㅠ
    cos.jar도 넣었습니다..

  • as
    2019.12.06 21:59

Designed by JB FACTORY