自己实在是解决不了了,内存溢出的问题

请各位朋友帮忙看下,困扰好久了. 情况是这样:
有一个小项目,用spring+ibatis+tomcat的,上传图片是用jspsmart,部署到虚拟主机上的时候上传一张图片就发生oom的现象,图片大小仅仅70k左右,在本机测试的时候和另一个已部署的项目都是采用同样的方式都不会出现这样的问题,而且可以上传10几张图片.部分异常如下:
1.
java.lang.OutOfMemoryError: Java heap space
at java.io.Win32FileSystem.resolve(Win32FileSystem.java:241)
at java.io.File.(File.java:312)
at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:674)
at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:432)
at org.apache.catalina.startup.HostConfig.check(HostConfig.java:1083)
at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:327)
at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
at org.apache.catalina.core.StandardHost.backgroundProcess(StandardHost.java:800)
at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1619)
at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1628)
at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1608)
at java.lang.Thread.run(Thread.java:619)
2.
ava.lang.OutOfMemoryError: Java heap space
at java.lang.StringBuilder.toString(StringBuilder.java:430)
...
3,4,5...
基本上每次溢出的位置都不一样,真不知道怎么解决了,本机调试又调试不出来,在jspsmart里加上了Runtime.getRuntime().freeMemory(),发现可用内存都还有100多m,拜托各位了
光这个是看不出什么东西出来的,在说详细点,贴点代码,你上传用的是什么东东
>在本机测试的时候和另一个已部署的项目都是采用同样的方式都不会出现这样的问题,
那就是这个虚拟主机设置的问题,从操作系统推翻重来。
先感谢下banq的回复,虚拟主机不是自己公司的是最郁闷的一点,不能随便改动,不知道各位有没有遇到过Runtime.getRuntime().freeMemory ()显示还有100多m内存后,接着就内存溢出的情况呢?
会不会JDK启动参数设置的内存太小
>会不会JDK启动参数设置的内存太小
不会的,设置了128m了,而且我已经说了在日志里加入了查看内存的语句,显示是还有100多m的,我本机测试的时候做同样的操作连1m的内存都没有消耗掉
其实这句应该说得很清楚了
java.lang.OutOfMemoryError: Java heap space
设置JVM的系统参数. 一般出了设置JVM的内存大小外,最好设置一下permSize参数
网上搜索一大把

[该贴被admin于2009-03-03 11:44修改过]