type Exception reportmessagedescription The server encountered an internal error () that prevented it from fulfilling this request.exceptionjavax.servlet.ServletException: Servlet execution threw an exceptionroot causejava.lang.OutOfMemoryError: Java heap space
com.mysql.jdbc.MysqlIO.unpackBinaryResultSetRow(MysqlIO.java:3743)
com.mysql.jdbc.MysqlIO.nextRow(MysqlIO.java:1347)
com.mysql.jdbc.MysqlIO.readSingleRowSet(MysqlIO.java:2301)
com.mysql.jdbc.MysqlIO.getResultSet(MysqlIO.java:423)
com.mysql.jdbc.MysqlIO.readResultsForQueryOrUpdate(MysqlIO.java:1991)
com.mysql.jdbc.MysqlIO.readAllResults(MysqlIO.java:1413)
com.mysql.jdbc.ServerPreparedStatement.serverExecute(ServerPreparedStatement.java:1143)
com.mysql.jdbc.ServerPreparedStatement.executeInternal(ServerPreparedStatement.java:677)
com.mysql.jdbc.PreparedStatement.executeQuery(PreparedStatement.java:1222)
com.bean.dao.ExclSC.SCExcl(ExclSC.java:19)
com.bean.servlet.DateBeifen.doGet(DateBeifen.java:41)
javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)note The full stack trace of the root cause is available in the Apache Tomcat/6.0.32 logs.这个是jsp页面输出的内容..请各位大大帮忙解决...貌似是 内存的问题? 是tomcat?还是jvm的内存啊?怎么设置..单独在java程序中测试也是出异常...谁能帮忙解决下啊..紧急~~~~~

解决方案 »

  1.   

    jvm内存溢出,看你导出的数据记录是不是太多了?tomcat在启动的时候,可以设置jvm的初始内存大小,可以参照这个设置一下http://blog.csdn.net/wula0010/archive/2010/02/26/5329817.aspx,但是如果数据量实在太大,这也不是解决办法。
      

  2.   

    是内存溢出,你可能一次性从数据库取出的数据库太多了,以至于往excel中写数据的时候在内存中创建了太多对象无法释放。你可以考虑分段取出数据,或者使用线程同步。