728x90
반응형

아파치 poi

http://poi.apache.org/spreadsheet/how-to.html

 

HSSFWorkbook 구현시 필요

poi-3.9-20121203.jar 

 

XSSFWorkbook 구현시 필요

poi-3.9-20121203.jar

poi-ooxml-3.9-20121203.jar

poi-ooxml-schemas-3.9-20121203.jar 

ooxml-lib\dom4j-1.6.1.jar

ooxml-lib\xmlbeans-2.3.0.jar

 

기존 HSSFWorkbook(.xls) 을 사용하던 방식에서 둘다 처리가능한 모델로 변경한다.

AbstractView 를 상속받아 renderMergedOutputModel() 를 오버라이딩하면 된다.

 

@Override

protected void renderMergedOutputModel(Map<String, Object> model, HttpServletRequest req, HttpServletResponse res) throws Exception {

Workbook workbook;

String 확장자 = (String) model.get("확장자");

if(확장자=xlsx)

wb = new XSSFWorkbook();

}else{

wb = new HSSFWorkbook();

}

buildExcelDocument(model, workbook, req, res);

ByteArrayOutputStream os= createTemporaryOutputStream();

wb.write(os);

writeToResponse(res, os);

}

 

@SuppressWarnings("unchecked")

private void buildExcelDocument(Map<String, Object> model, Workbook workbook, HttpServletRequest req, HttpServletResponse res) throws Exception {

        구현....

}

 

참고

https://github.com/hmkcode/Spring-Framework/blob/master/spring-mvc-json-pdf-xls-excel/src/main/java/com/hmkcode/view/abstractview/AbstractExcelView.java 

728x90
반응형
블로그 이미지

nineDeveloper

안녕하세요 현직 개발자 입니다 ~ 빠르게 변화하는 세상에 뒤쳐지지 않도록 우리모두 열심히 공부합시다 ~! 개발공부는 넘나 재미있는 것~!

,