# 파일업로드/다운로드 (appendix)

> 시트의 내용을 엑셀이나,텍스트 파일로 다운로드 하거나, 반대로 파일의 내용을 읽어 시트에 업로드하는 방법에 대해 알아봅니다.

## 필수 파일 요소

업로드/다운로드 작업을 위해서 다음과 같은 파일이 필요합니다.

1. 서버모듈

파일명 | 용도
--- | ---
ibsheet8-1.0.x.jar | 서버코어모듈
poi-3.13-all.jar | 엑셀 파일 생성/파싱 모듈
commons-codec-1.6.jar | 엑셀 업로드 관련 인코딩 모듈
commons-logging-1.1.3.jar | 로그 모듈
ib-itext.jar | pdf다운로드 모듈
batik-all-xml.jar | 이미지 처리 관련 모듈

### 서버모듈 확인 방법

서버에서 jar 파일이 정상적으로 로드되었는지 다음 구문을 통해 확인 할 수 있습니다.

    <%
    System.out.println(com.ibleaders.ibsheet.util.Version.getJarVersion());
    %>

위와 같이 jsp파일에 입력시 서버에 콘솔창에 다음과 같은 메세지가 나오면 정상입니다.
(각 jar 파일에 버젼 정보를 확인해 주세요.)

    ********************************************************************************
    ### ibsheet8 serverModule version ###
    # ibsheet8 jar Version : 1.0.X
    ********************************************************************************
    Class Info  : org.apache.poi.ss.usermodel.Workbook
    jar path    : /D:/repository/ibsheet8-server-module/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/webProject/WEB-INF/lib/poi-3.13-all.jar
    jar Version : Apache POI 3.13
    Required Version : POI 3.8 beta3 or later
    ********************************************************************************
    Class Info  : org.apache.poi.POIXMLDocument
    jar path    : /D:/repository/ibsheet8-server-module/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/webProject/WEB-INF/lib/poi-3.13-all.jar
    jar Version : Apache POI 3.13
    Required Version : POI 3.8 beta3 or later
    ********************************************************************************
    Class Info  : org.openxmlformats.schemas.spreadsheetml.x2006.main.CTWorkbookPr
    jar path    : /D:/repository/ibsheet8-server-module/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/webProject/WEB-INF/lib/poi-3.13-all.jar
    jar Version : Apache POI 3.13
    Required Version : POI 3.8 beta3 or later
    ********************************************************************************
    Class Info  : org.openxmlformats.schemas.spreadsheetml.x2006.main.CTWorkbook
    jar path    : /D:/repository/ibsheet8-server-module/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/webProject/WEB-INF/lib/poi-3.13-all.jar
    jar Version : Apache POI 3.13
    Required Version : POI 3.8 beta3 or later
    ********************************************************************************
    Class Info  : org.apache.xmlbeans.XmlBeans
    jar path    : /D:/repository/ibsheet8-server-module/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/webProject/WEB-INF/lib/poi-3.13-all.jar
    jar Version : Apache POI 3.13
    Required Version : XMLBeans 2.3.0 or later
    ********************************************************************************

2. jsp 파일

파일명 | 용도
--- | ---
Down2Excel.jsp | 엑셀파일 다운로드
LoadExcel.jsp | 엑셀파일 업로드
Down2Text.jsp | 텍스트파일 다운로드
LoadText.jsp | 텍스트파일 업로드
Down2Pdf.jsp | PDF파일 다운로드

3. 플러그인 파일 include 파일

시트를 이용하여 다운로드/업로드 작업을 할 모든 페이지에는 `/plugins/ibsheet-excel.js` 파일이 인클루드 되어야 합니다.

## 준비 과정

### jsp 파일경로 설정

시트 생성시 Cfg 프로퍼티에 `Export.Url` 속성을 통해 jsp 파일이 위치한 경로를 설정해야 합니다.

    options.Cfg = {
        "Export":{
            "Url":"/assets/ibsheet/jsp"
        }
    }

## 기능 구현

down2Excel이나 loadText함수를 통해 시트의 내용을 다운로드/업로드 하실 수 있습니다.

    sheet.down2Excel({"fileName":"boardList.xlsx","sheetDesign":1,"merge":1});

업로드/다운로드 함수에 대한 자세한 기능은 해당 함수에 대한 메뉴얼 파트를 참고해 주세요.

### Read More

- Export cfg
- down2Excel method
- loadExcel method
- down2Text method
- loadText method
- down2Pdf method

### Since

product | version | desc
--- | --- | ---
core | 8.0.0.0 | 기능 추가