Java heap space 解决方法
因为程序要从数据读取近10W行记录处理,当读到9W的时候就出现 java.lang.OutOfMemoryError: Java heap space 这样的错误。
在网上一查可能是JAVA的堆栈设置太小的原因。
跟据网上的答案大致有这两种解决方法:
1、设置环境变量
set JAVA_OPTS= -Xms32m -Xmx512m
可以根据自己机器的内存进行更改,但本人测试这种方法并没有解决问题。可能是还有哪里需要设置。
2、java -Xms32m -Xmx800m className
就是在执行JAVA类文件时加上这个参数,其中className是需要执行的确类名。(包括包名)
这个解决问题了。而且执行的速度比没有设置的时候快很多。
如果在测试的时候可能会用Eclispe 这时候就需要在Eclipse ->run -arguments 中的VM arguments 中输入-Xms32m -Xmx800m这个参数就可以了。
如果是 windows, tomcat 本身提供的工具(Configure Tomcat)就可以设置了 。
设置附图中红色框指示的位置就好了。
如果是unix/linux,可以
export JAVA_OPTS="-Xms256m -Xmx512m"
当然那,具体size 应该根据计算机内存的大小来定。
另外一种错误信息是:
type Exception report
message
description The server encountered an internal error () that prevented it from fulfilling this request.
exception
javax.servlet.ServletException: Servlet execution threw an exception
root cause
java.lang.OutOfMemoryError: PermGen space
相关文档:
1.String str = new String("abc"); 请问定义了几个对象。定义了两个对象,一个"abc", 一个是new String().<String s = "abc";首先到堆中查找值为"abc"的对象,没有就新建一个对象,"abc"本身就是一个对象。>
2.面向对象的东西:abstract & interface的各自的作用,区别。
3.面向对象的特征,以及怎么实现的。1 ......
java的范型机制看起来有点像C++的模版,但相比较C++的模版类,java中的范型没有关键字template,并且有着不同的实现机制(本质区别)。
范型类
先看一个范型类的例子:
public class Demo1<T> {
private T value;
public Demo1(T value) {
&n ......
转自:http://gyhgc.javaeye.com/blog/225039
在软件开发的过程中总是强调注释的规范,但是没有一个具体的标准进行说明,通常都是在代码编写规范中简单的描述几句,不能作为一个代码注释检查的标准和依据,做什么都要有一个依据吗:),现在我特整理了一个《Java的注释规范》,内容来自网络、书籍和自己的 ......
谈谈Java继承中的重载,覆盖和隐藏
好久不写博客了,距离上一篇已经过了两年多了。这两年在干嘛,总之一年难尽!
前一段时间忙了两个月,忙着研究和做一些SSH架构的东西,两个月下来,收获颇丰,最近闲下来了,于是就痛快的开始玩游戏,但是不知怎么地,怎么玩都没意思,于是决定开始再好好研究研究Java吧。于是大概翻了翻 ......
Action注解配置
使用方式如下:
Java代码
@ParentPackage(value="struts-default")
@Namespace(value="/test")
@Result(name="success",value="/userSuc.jsp")
@Results({
@Result(name="success",value="/userSu ......