程序要遍历读取xml并写入数据库,需要占用大量内存 如果数据量大则报错
Exception in thread "Timer-0" java.lang.OutOfMemoryError: Javaheap space
查了下资料jvm默认占用系统1/64的内存,应该有点少最后决定增加虚拟内容
Win 操作系统
修改 tomcat/bin/catalina.bat 文件
增加一行 set JAVA_OPTS=-Xms256m-Xmx1024m
第二种方法:环境变量中设
变量名:JAVA_OPTS
变量值:-Xms512m-Xmx512m
第三种方法:前两种方法针对的是bin目录下有catalina.bat的情况(比如直接解压的Tomcat等),但是有些安装版的Tomcat下没有catalina.bat,这个时候可以采用如下方法,当然这个方法也是最通用的方法:
打开tomcatHome/bin/tomcat5w.exe,点击Java选项卡,然后将会发现其中有这么两项:Initialmemorypool和Maximummemorypool.Initialmemorypool这个就是初始化设置的内存的大小。Maximummemorypool这个是最大内存的大小设置完了就按确定然后再重启TOMCAT你就会发现tomcat中jvm可用的内存改变了
Linux 操作系统
修改 tomcat/bin/catalina.sh 文件
增加 JAVA_OPTS="-Xms256m -Xmx1024m"
测试了第三中tomcat6w.exe 可行
在myeclips中启动Tomcat