Tenho algumas informações em um BD e preciso gerar um TXT c elas.
Eu busco essas informações e carrego em um List.
O problema é q qdo essas informações são muitooos registros, tipo 500.000,
a List da pau.
Da:
Exception occurred during event dispatching:
java.lang.OutOfMemoryError: Java heap space
at java.awt.image.DataBufferInt.(DataBufferInt.java:41)
at java.awt.image.Raster.createPackedRaster(Raster.java:458)
at java.awt.image.DirectColorModel.createCompatibleWritableRaster(DirectColorModel.java:1015)
at java.awt.image.BufferedImage.(BufferedImage.java:321)
at com.sun.java.swing.plaf.windows.XPStyle$SkinPainter.createImage(XPStyle.java:568)
at sun.swing.CachedPainter.paint0(CachedPainter.java:124)
at sun.swing.CachedPainter.paint(CachedPainter.java:96)
at com.sun.java.swing.plaf.windows.XPStyle$Skin.paintSkin(XPStyle.java:518)
touresfinge
O seu problema não está no List… acontece que a VM não consegue mais alocar espaço na sua heap…
no eclipse, vc pode editar o “Run” da sua aplicação…
tem lá uns argumentos vc pode adicionar em “VM Arguments”:
[quote=touresfinge]Oi pessoal, tou precisando de um Help.
Tenho algumas informações em um BD e preciso gerar um TXT c elas.
Eu busco essas informações e carrego em um List.
O problema é q qdo essas informações são muitooos registros, tipo 500.000,
a List da pau.
Da:
Exception occurred during event dispatching:
java.lang.OutOfMemoryError: Java heap space
at java.awt.image.DataBufferInt.(DataBufferInt.java:41)
at java.awt.image.Raster.createPackedRaster(Raster.java:458)
at java.awt.image.DirectColorModel.createCompatibleWritableRaster(DirectColorModel.java:1015)
at java.awt.image.BufferedImage.(BufferedImage.java:321)
at com.sun.java.swing.plaf.windows.XPStyle$SkinPainter.createImage(XPStyle.java:568)
at sun.swing.CachedPainter.paint0(CachedPainter.java:124)
at sun.swing.CachedPainter.paint(CachedPainter.java:96)
at com.sun.java.swing.plaf.windows.XPStyle$Skin.paintSkin(XPStyle.java:518)
Alguem sabe como eu posso resolver isso???
[/quote]
Esse erro ai é no look and feel. Parece que está tentando criar uma imagem demaziado grande.
Quanto a lista de muitos dados simplesmente não use. Use o recordSet directamente.
Em alternative implemente um objeto com a interface List que encapsula um RecordSet