본문 바로가기

웹개발/Java

[Java] Poi 를 이용하여 데이터를 Excel 다운 받아보자

준비

우선 라이브러리를 추가 해야 합니다.


1) 직접 다운로드


http://poi.apache.org/download.html




다운로드 받아 각자 라이브러리 위체에 맞게 추가해준다.



※ 3.14 버전으로 진행 했습니다.


2) Maven 내에 Pom.xml 추가 

 Pom.xml

 <dependency>

    <groupId>org.apache.poi</groupId>
    <artifactId>poi</artifactId>
    <version>3.14.1</version>
</dependency>
<dependency>
    <groupId>org.apache.poi</groupId>
    <artifactId>poi-ooxml</artifactId>
    <version>3.14.1</version>
</dependency>

최종 작업 파일  


DB를 통해 가져온 후 구동한 페이지 입니다.


해당 데이터를 다운 받아 보겠습니다.


 ExcelController.java

 


[설명]


1) List에 담겨있는 Test 값들을 Cell로 집어 넣어 1행씩 만들어 줍니다.


2) 엑셀 colum의 숫자입니다.


3) labels 과 styleInfo 를 보시면 각각 6개씩입니다.


2/3번의 cellCnt 와 labels, styleInfo 의 수는 같아야 하고, labels는 엑셀의 column 명을 뜻하고, styleInfo의 center는 labels의 가운데 정렬을 의미합니다.


4,5) 4번의 과정은 다운로드시 파일의 제목 및 데이터 들을 하나의 map으로 만들어 excelMake() 메소드로 넘겨줍니다.



 ExcelUtil.java (1)

 


ExcelMake 메서드로 넘어온다면 model에 담아왔던 값들을 이용해 파일을 생성합니다.

빨간 네모가 있는 줄을 보시면 createSheet() 를 통해 시트를 생성한 후

 ExcelUtil.java - createSheet()

 


createStyles 를 이용하여 각 Cell에 스타일을 지정해 준다.

 ExcelUtil.java (2)

 



스타일 지정 후 FileOutputSteam, File등을 이용하여 Excel파일을 생성합니다.

파일 다운 생성을 하기에 앞서 꼭 파일서버경로를 맞춰 주시기 바랍니다. 


 엑셀

 


이런 식으로 다운로드가 진행이 됩니다.