和rester214 (呆呆中)  问题略不一样,他的是写的问题,我在读的时候就OOM了,就这么两句
java.io.File file = new java.io.File("xxx.xls");
fs = new POIFSFileSystem(new FileInputStream(file));
HSSFWorkbook wb = new HSSFWorkbook(fs) //在这就溢出了,我的文件才5000行

解决方案 »

  1.   

    设置JVM的初始,内容,大一点试试..在Eclipse中,,修改eclipse.iniTomcat中: 增加环境变量....-Xms256m -Xmx512m
      

  2.   

    不可以new多了对象,你可以公用一个对象,我也犯过这个错误,你检查一下new 了多少个对象,重点是循环里面的
      

  3.   

    我只new了一个对象啊,而且我没法分批读啊,因为 你们看到的HSSFWorkbook的参数只能是一个完整的POIFSFileSystem对象
      

  4.   

    sundeveloper(51TTUP) 兄的意见基本上是对的,开始的时候,我也这么设置的,结果不行,这个设置是Eclipse启动以后Eclise本身做为一个java进程所需要的内存。最后我是在命令行下面,直接运行的java -Xmx256m实现的。
    如果不加参数,我看java本身默认的内存似乎在80M左右就溢出了。