본문 바로가기

Server Dev

JSP 파일 업로드 [펌]

JSP 파일 업로드...어렵나? 과연? 정말? 레알? 진짜?

 

그러나 파일 업로드는 생각해 보면 무쟈게 쉽고 간단하고 또간단하고 무지하게 간단하다...ㄱ-;;;

 

HTTP 프로토콜을 사용하여 할 수도 있지만, 더 쉬운 방법은 COS.jar 를 이용하는 것인데...

 

저거슨 그이름도 유명한, 오랠리 책의 저자인 Jason Hunter가 servlets.com을 통해서 배포하는 라이브러리이다.

 

http://www.servlets.com 에 접속해서 [com.oreilly.servlet[ 메뉴를 클릭하여,

 

cos-26Dec2008.zip 을 다운받아서 푼담에 cos.jar 파일을

 

사용하는 이클립스에 WEB-INF/lib 에 살포시 카피해 주면 된다.

 

동작 환경 : JDK 1.6

       Tomcat 6.x

       Eclipse HALIOS ver

 

 

==== (파일 선택 페이지).jsp ==================================================

<%@ page language="java" contentType="text/html; charset=EUC-KR" pageEncoding="EUC-KR"%>

<html>

<head>

 <meta http-equiv="Content-Type" content="text/html; charset=EUC-KR">

 <title>파일 업로드를 심플하게 해보아요 :-)</title>

</head>

<body>

          <!-- enctype="multipart/form-data" 파일이나 대용량 데이터 보낼때 데이터 전송 방식 --><form name="fileForm" method="post" enctype="multipart/form-data" action="fileUpload.jsp"> 

 작성자 : <input type="text" name="name"><br>

 제목 : <input type="text" name="subject"><br>

 파일명 : <input type="file" name="filename"><br>

 

 <input type="submit" value="파일올리기"><br>

</form>

</body>

</html>

=============================================================================

 

 

==== fileUpload.jsp =============================================================

<%@ page language="java" contentType="text/html; charset=EUC-KR"%>

 

<!-- 파일 업로드 처리를 위한 MultipartRequest 객체를 임포트 -->

<%@ page import="com.oreilly.servlet.MultipartRequest" %>

 

<!-- 파일 중복처리 객체 임포트 -->

<%@ page import="com.oreilly.servlet.multipart.DefaultFileRenamePolicy" %>

 

<%@ page import="java.util.*" %>


<%

 String uploadPath = "C:\\";
 
 int size = 10*1024*1024;        // 업로드 파일 최대 크기 지정
 
 String name="";
 String subject="";
 String filename="";
 
 
 try{
 
  // 파일 업로드. 폼에서 가져온 인자값을 얻기 위해request 객체 전달,

  //업로드 경로, 파일 최대 크기, 한글처리, 파일 중복처리
  MultipartRequest multi = new MultipartRequest(request, uploadPath, size, "euc-kr", new DefaultFileRenamePolicy());
 
  
  // 폼에서 입력한 값을 가져옴
  name = multi.getParameter("name");
  subject = multi.getParameter("subject");
 
  
// 업로드한 파일들을 Enumeration 타입으로 반환
// Enumeration형은 데이터를 뽑아올때 유용한 인터페이스 Enumeration객체는 java.util 팩키지에 정의 되어있으므로
// java.util.Enumeration을 import 시켜야 한다.
  Enumeration files = multi.getFileNames();
 
  
  // 업로드한 파일들의 이름을 얻어옴
  String file = (String)files.nextElement();
  filename = multi.getFilesystemName(file);
 
 
 }catch(Exception e){
  // 예외처리
  e.printStackTrace();
 }

 

 out.println("작성자 : "+name+"<br>"); 
 out.println("제목 : "+subject+"<br>");

%>

  
<html>

<body>

 업로드 된 파일명 : <%=filename%><br>

</body>

</html>

 

 

=============================================================================

 

걍 붙여넣으시면 됩니다 -_-b

 

최종정리!!!

1. cos.jar 복사하고

2. 파일 2개 작성합니다

3. 끗ㅋㅋㅋ

 

블로깅을 하다보면 걍 설명없이 코드하나 띡 붙여놓은...

되지도 않는 그런 코드들을 보고 분노하시는 분들을 위하여...

의문점은 답글로! 태클도 답글로! 퍼갈땐 매너답글로!!!

하나쯤 알고있음 편하게 어딘가 써먹는 그런 것이죠 파일업로드...

비오는 흐린날 모두들 마음만은 행복하세요 :-)

 


출처 : http://blog.naver.com/noranlemon84/10107779304

[출처] JSP 파일 업로드|작성자 Teddy