当前位置: 首页 > Java > 正文

c3p0出现java.lang.OutOfMemoryError: Java heap space

关键字:
1 星2 星3 星4 星5 星 (1 次投票, 评分: 5.00, 总分: 5)
Loading ... Loading ...
baidu_share

在使用c3p0连接池+Mybatis进行数据库分页查询时报以下错误:

1
2
3
4
5
6
7
8
9
10
11
12
13
java.lang.OutOfMemoryError: Java heap space
at java.util.Arrays.copyOf(Arrays.java:2882)
at java.lang.StringCoding.safeTrim(StringCoding.java:75)
at java.lang.StringCoding.access$100(StringCoding.java:34)
at java.lang.StringCoding$StringDecoder.decode(StringCoding.java:151)
at java.lang.StringCoding.decode(StringCoding.java:173)
at java.lang.String.<init>(String.java:444)
at java.lang.String.<init>(String.java:516)
at com.mysql.jdbc.ResultSet.getStringInternal(ResultSet.java:5709)
at com.mysql.jdbc.ResultSet.getString(ResultSet.java:5597)
at com.mysql.jdbc.ResultSet.getString(ResultSet.java:5613)
at com.mchange.v2.c3p0.impl.NewProxyResultSet.getString(NewProxyResultSet.java:3472)
......

分析:news_content中content内容多,大概在6k左右。一次取出1万条数据,所以会很占用内存。
再给程序加大内存后:
-Xmx1024m
-Xms1024m
还是会报以上错误。
后来再加上

1
2
3
4
-Xmx1024m 
-Xms1024m
-XX:PermSize=100M 
-XX:MaxPermSize=200M

就没有报错了,顺利的从数据库取出数据。
看来报“java.lang.OutOfMemoryError: Java heap space”跟程序的持久代设置也有很大关系。

本文固定链接: http://www.chepoo.com/c3p0-java-lang-outofmemoryerror-java-heap-space.html | IT技术精华网

【上一篇】
【下一篇】

c3p0出现java.lang.OutOfMemoryError: Java heap space:等您坐沙发呢!

发表评论