Framework

POI Memory heap

jeeyong 2011. 6. 29. 15:19

출처 : http://gujjy.wordpress.com/2011/06/10/apache-poi-%EC%85%80%EA%B0%92%EC%9D%84-%EB%AC%B8%EC%9E%90%EC%97%B4%EB%A1%9C/ 

위 사이트에서 알아낸 내용을 간단하게 간추려서 설명하자면 내가 필요한부분만..

HSSFWorkbook(이하 HSSF) 는 엑셀 97~2003 까지 데이터 형식의 파일을 생성 및 읽는 객체고,
XSSFWorkbook(이하 XSSF) 은 엑셀 2007 을 지원하는 데이터 형식의 파일을 생성 및 읽는 객체이다.

HSSF는 한 sheet에 최대 65,535 row 만 생성할수있어 현재 주로 사용하는 데이터 베이스에서 엑셀로 변환하는 작업에는 한계가 있다. 
XSSF는 최대 row의 갯수는 거의 무한대에 가깝지만
 (어디선거 본봐로는 백만row까지 가능하단다) POI를 사용해서 생성하려 할경우 5MB 정보만 되도 java heap memory  error를 발생시킨다. 

위 출처에서 가져온 글 

최근 프로젝트에서 HSSF는 약 35MB의 엑셀파일로드가 가능했는데 XSSF는 15MB도 올리지 못했습니다. (-Xms256m -Xmx1024m -XX:MaxPermsize=512m 등으로 메모리 사이즈를 주었었음)


'Framework' 카테고리의 다른 글

POI 3.5 beta1을 이용한 파일(DOC, XLS, XLSX) 내용 검색 예제  (0) 2011.06.29
Commons Logging과 Log4J  (0) 2011.05.24
심플한 LOG4J  (0) 2008.06.26
log4j 배워보자  (0) 2008.06.04
Arid POJOs Framework  (0) 2008.04.11