티스토리 뷰

 

#에러 상황

> 엑셀 양식을 불러와 데이터를 입력한 후, 엑셀 다운로드 하는 기능 중, 엑셀 양식 불러오기가 안 됨

   > 엑셀 양식이 커서 불러오는 게 안 됨

 

# 사전 정보

> 엑셀에 데이터 입력하는 것은, getRow().setValue() 방식으로, 엑셀 양식 폼에 데이터 입력하는 칸까지 미리 만들어둠(윤곽선 잡아주던가 하는 등의) 이렇게 하면, 엑셀 양식 폼 파일 크기가 커져서  읽어오는데 문제가 많음.

 

# 원인

메모리 초과

 

# 해결 1

> 이클립스 VM 메모리 확대

   => 안 됨

 

# 해결방법

> XSSF 방식으로 읽어오는 것을 SAX 방식으로 변경하면 된다는데,

   SAX로 불러와 거기에 데이터 입력하여 저장하는 것까지 하기 어려워

 

> 헤더 양식만 만들어서 엑셀 양식 폼 용량 줄여서

> 기존 XSSF 방식으로 파일 읽어옴

> 데이터를 getRow().setValue()에서 -> createRow() 형태로 변경하여

> 데이터 만들어서 엑셀 다운로드 하도록 변경

Closing non transactional SqlSession [org.apache.ibatis.session.defaults.DefaultSqlSession@188617ea]
2023-10-19 16:08:20.134  INFO 15156 --- [-nio-80-exec-10] k.isoft.cms.web.aop.ExecutionTimeAspect  : -------> EXECUTION TIME LOG : kr.isoft.cms.biz.dao.ThyroidExcelDao(selectThyroidExcelList) [ 총 걸린 시간 :: ( 992ms ) ]
2023-10-19 16:08:20.134  INFO 15156 --- [-nio-80-exec-10] k.isoft.cms.web.aop.ExecutionTimeAspect  : -------> EXECUTION TIME LOG : kr.isoft.cms.biz.service.impl.ThyroidExcelServiceImpl(ThyroidExcelList) [ 총 걸린 시간 :: ( 1160ms ) ]
Exception in thread "File Watcher" java.lang.OutOfMemoryError: Java heap space
	at java.lang.String.toLowerCase(String.java:2590)
	at java.io.WinNTFileSystem.hashCode(WinNTFileSystem.java:690)
	at java.io.File.hashCode(File.java:2171)
	at org.springframework.boot.devtools.filewatch.FileSnapshot.hashCode(FileSnapshot.java:72)
	at java.util.HashMap.hash(HashMap.java:340)
	at java.util.HashMap.put(HashMap.java:613)
	at java.util.HashSet.add(HashSet.java:220)
	at org.springframework.boot.devtools.filewatch.FolderSnapshot.collectFiles(FolderSnapshot.java:70)
	at org.springframework.boot.devtools.filewatch.FolderSnapshot.collectFiles(FolderSnapshot.java:67)
	at org.springframework.boot.devtools.filewatch.FolderSnapshot.collectFiles(FolderSnapshot.java:67)
	at org.springframework.boot.devtools.filewatch.FolderSnapshot.collectFiles(FolderSnapshot.java:67)
	at org.springframework.boot.devtools.filewatch.FolderSnapshot.collectFiles(FolderSnapshot.java:67)

Exception: java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler in thread "File Watcher"
2023-10-19 16:10:50.208 ERROR 15156 --- [-80-BlockPoller] o.a.tomcat.util.net.NioBlockingSelector  : Error processing selection key operations

java.lang.OutOfMemoryError: Java heap space

2023-10-19 16:10:50.274 ERROR 15156 --- [-nio-80-exec-10] o.a.c.c.C.[.[.[/].[dispatcherServlet]    : Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Handler dispatch failed; nested exception is java.lang.OutOfMemoryError: Java heap space] with root cause

java.lang.OutOfMemoryError: Java heap space

 

 

 

댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/05   »
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
글 보관함