김갱환
맨땅에 코딩
김갱환
전체 방문자
오늘
어제
  • 분류 전체보기 (239)
    • ⁂ 맨땅에 코딩 (11)
      • : Story (3)
      • : MiniProject 'MyWeb' (1)
      • : Final Project (5)
      • : Josa-Moa 한국어 조사 처리 프로젝트 (1)
    • —————Frontend——————————————.. (0)
    • ⁂ HTML (10)
      • : 기본 익히기 (10)
    • ⁂ CSS (15)
      • : 기본 익히기 (15)
    • ⁂ Java Script (32)
      • : 기본 익히기 (28)
      • : 자바스크립트 라이브러리 (1)
      • : 연습 문제 (3)
    • ⁂ jQuery (11)
      • : 기본 익히기 (11)
    • ⁂ Bootstrap (3)
      • : 기본 익히기 (3)
    • ⁂ TailWind CSS (1)
    • ⁂ AJAX (5)
      • : 기본 익히기 (5)
    • ⁂ Vue.js (3)
      • : 기본 익히기 (3)
    • —————DB : Data Base————————.. (0)
    • ⁂ Oracle DB (27)
      • : 기본 익히기 (24)
      • : 연습 문제 (3)
    • ⁂ MyBatis Framework (15)
      • : 기본 익히기 (15)
    • —————Backend———————————————.. (0)
    • ⁂ Java (62)
      • : 기본 익히기 (42)
      • : JDBC - Java DataBase Conn.. (4)
      • : Crawling (2)
      • : 독학으로 공부하기(과거) (11)
      • : 연습문제 (3)
    • ——————Web————————————————— (0)
    • ⁂ JSP (28)
      • : 기본 익히기 (28)
    • ⁂ Spring FrameWork (15)
      • : Legacy Project (1)
      • : 기본 익히기(Boot 기반) (14)
    • ——————————————————————— (0)
    • ⁂ Error Note (1)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • 코딩
  • 자바
  • 프론트앤드
  • httperror
  • 코딩 #코딩공부 #상수 #리터럴 #형변환 #개발자 #자바 #자바공부 #자바독학
  • 연산자 #기본연산자 #코딩 #자바 #독학 #자바공부 #자바연산자
  • HTML공부
  • ErrorPage
  • 코딩공부 #자바공부
  • 자바공부
  • 백앤드
  • http에러메세지
  • 객체지향프로그래밍
  • 개발자
  • 비트연산자 #코딩공부 #자바공부 #코딩 #자바 #프로그래밍 #개발자
  • web.xml수정
  • 코딩공부 #코딩 #자바 #자바독학 #자바공부 #개발자 #프론트앤드 #백앤드 #풀스택
  • 코딩공부
  • 코딩 #코딩공부 #프론트앤드 #백앤드 #풀스택개발자
  • 풀스택

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
김갱환
⁂ JSP/: 기본 익히기

[JSP] #10 파일 업로드

⁂ JSP/: 기본 익히기

[JSP] #10 파일 업로드

2022. 10. 20. 13:13
1. 파일 전송 원리
 
- 폼에 enctype='multipart/form-data'가 추가
- enctype이 폼에 추가가 되면 기본적으로 request에 값을 담을수 없다.
- 업로드된 파일저장
   . 데이터베이스에는 저장시키지 않는다
   . DB에는 업로드 된 파일명과 확장명, 파일크기정도만 저장을 시키고, 
     실제 파일은 웹서버의 하드디스크에 저장을 시킨다.
 
- 전송된 File 저장(jakarta FileUpload API, 파일 업로드)
 
- 파일 전송 원리
 
   파일 ---> Web Browser ---> 전송 ---> Tomcat ---> 디스크에 저장 (파일)
                                               ---> DB에 저장(파일관련 속성)
 
 
 
2. 파일업로드 관련 라이브러리 생성에 필요한 파일
 
   - http://commons.apache.org/proper/commons-fileupload/
 

FileUpload – Home

Commons FileUpload The Commons FileUpload package makes it easy to add robust, high-performance, file upload capability to your servlets and web applications. FileUpload parses HTTP requests which conform to RFC 1867, "Form-based File Upload in HTML". That

commons.apache.org

 

      commons-fileupload-1.3.1-bin.zip
 
   - http://commons.apache.org/proper/commons-io/
 

Commons IO – Commons IO Overview

Apache Commons IO Apache Commons IO is a library of utilities to assist with developing IO functionality. There are six main areas included: io - This package defines utility classes for working with streams, readers, writers and files. comparator - This p

commons.apache.org

  ---> Download
      commons-io-2.4-bin.zip
 
     압축 해제후 library jar 파일 
     commons-fileupload-1.2.1.jar 와 commons-io-2.4.jar 을
     WEB-INF/lib 폴더에 복사
 
 
 
 
3. FileItem Interface가 제공하는 메소드 내역
 
  . boolean isFormField(): 일반적인 입력 파라미터인 경우 true를 리턴 합니다.
  . String getFieldName(): 파라미터의 이름을 구합니다.
  . String getString()   : 기본 캐릭터셋을 이용하여 파라미터의 값을 구합니다.
  . String getString(String encoding): 지정한 인코딩을 이용하여 파라미터값을 구함
  . String getName()     : 업로한 파일의 전체 경로를 포함한 이름을 구합니다.
  . long getSize()       : 업로드한 파일의 크기를 구합니다.
  . void write(File file): 업로드한 파일을 file이 나타내는 파일로 저장합니다.
  . InputStream getInputStream(): 업로드한 파일을 읽어오는 입력 스트림을 리턴합니다.
  . byte[] get()         : 업로드한 파일을 byte 배열로 구합니다.
  . boolean isInMemory() : 업로드한 파일이 임시 디렉토리에 저장된 상태인 경우 
                           true를 리턴하고, 임시 데렉토리에 저장된 경우 false를 리턴합니다.
  . void delete()        : 파일과 관련된 자원을 제거합니다.메모리가 사용되고 
                           있을 경우 메모리를 반환하고, 임시 디렉토리에 있는 파일을 삭제합니다.
 
 
 
 
[02] cos.jar 파일업로드 라이브러리 무료 배포
 
1. cos.jar
 
  -> http://www.servlets.com  -> com.oreilly.servlet  -> cos-26Dec2008.zip 압축 해제
  -> setup/cos-26Dec2008/lib/cos.jar 복사
  -> /src/main/webapp/WEB-INF/lib/cos.jar 붙여넣기
 
  - cos.jar API문서 참조: setup/cos-26Dec2008/doc/index.html 
 
 
 
2. 파일 업로드가 성공했는지 확인
 
  D:\java0123\workspace \.metadata
                        \.plugins
                        \org.eclipse.wst.server.core
                        \tmp0
                        \wtpwebapps
                        \myweb
                        \storage 폴더에 파일이 있으면 업로드 성공
 
저작자표시 비영리 동일조건 (새창열림)

'⁂ JSP > : 기본 익히기' 카테고리의 다른 글

[JSP] #11-2 Http 에러페이지 만들고 띄우기 / web.xml 파일 수정하기  (0) 2022.10.26
[JSP] #11-1 MVC 모델 2를 알아보자 > EL/JSTL의 초석!  (0) 2022.10.26
[JSP] #9 자바 메일 보내기  (0) 2022.10.19
[JSP] #8 쿠키 클래스  (0) 2022.10.18
[JSP] #7 SCOPE- JSP의 내장객체와 내부변수  (0) 2022.10.17
    '⁂ JSP/: 기본 익히기' 카테고리의 다른 글
    • [JSP] #11-2 Http 에러페이지 만들고 띄우기 / web.xml 파일 수정하기
    • [JSP] #11-1 MVC 모델 2를 알아보자 > EL/JSTL의 초석!
    • [JSP] #9 자바 메일 보내기
    • [JSP] #8 쿠키 클래스
    김갱환
    김갱환
    코딩의 코자도 모르는 이의 공부 기록장

    티스토리툴바

    개인정보

    • 티스토리 홈
    • 포럼
    • 로그인

    단축키

    내 블로그

    내 블로그 - 관리자 홈 전환
    Q
    Q
    새 글 쓰기
    W
    W

    블로그 게시글

    글 수정 (권한 있는 경우)
    E
    E
    댓글 영역으로 이동
    C
    C

    모든 영역

    이 페이지의 URL 복사
    S
    S
    맨 위로 이동
    T
    T
    티스토리 홈 이동
    H
    H
    단축키 안내
    Shift + /
    ⇧ + /

    * 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.