【发布时间】:2012-12-07 16:22:32
【问题描述】:
我有一个 java 应用程序表单,我正在访问数据库中的记录、处理它并再次更新数据库。 我通过将我的 java 应用程序转换为 JAR 并从命令提示符执行它来做到这一点。在测试期间只有 20 条记录 数据库中的每个表。为此,我按如下方式执行 jar 以避免内存不足错误,
java -jar -Xmx512m MyApp.jar
如果数据库包含很多记录(50,000),如何在执行jar时增加堆大小或如何在执行jar时根据需要动态增加堆大小。
谢谢
【问题讨论】:
-
除了设置最小/最大堆大小(在分析应用程序之后)之外,您还应该查看垃圾收集策略,通常使用更好的 gc 策略可以用更少的内存获得更多价值。可用选项取决于您使用的 Java 版本。 Jconsole 是你的朋友。