Afim de possibilitar a geração de relatórios relativamente grandes, o JasperReports dispõe de um recurso chamado “virtualização”. Ao gerar um relatório utilizando virtualização, o JasperReports busca gerenciar melhor a memória RAM utilizada para geração do mesmo, tentando assim, eliminar um grande incômodo chamado “OutOfMemoryException: Java heap space”.

Existem 3 tipos de virtualização: JRFileVirtualizer, JRSwapFileVirtualizer, e JRGzipVirtualizer. Cada uma gerencia a memória de forma distinta, cabe ao desenvolvedor identificar a situação e a que melhor se adequar ao seu problema. Neste artigo, pretendo explicar o funcionamento de cada um deles.

continue lendo…