java - 最高的 jvm 参数来加速我的 java 程序
问题描述
我正在构建一个由大约 40000 行组成的 JTABLE,我的程序需要大约 30 分钟才能运行,然后我什至看不到 JTABLE,程序仍在运行但没有显示 JTABLE,我怀疑原因是我的程序太慢,占用资源太多。我应该使用哪些标志来增加 JVM 并使我的程序尽可能快?我应该为 -Xms 和 -Xmx 使用哪些标志?我怎样才能设法显示我的 JTABLE?
解决方案
我想你正在学习Java。首先,我推荐你阅读这两本书:
- 清洁代码:敏捷软件工艺手册(Robert C. Martin)
- 有效的 Java 2017 (Joshua Bloch)
在您的代码中,您发布了诸如完整路径目录和用户名之类的内容:
spoon.addInputResource("C:\Users\ mouna \ownCloud\Share\ganttproject\ganttprojectCopy");
或连接网址:
DriverManager.getConnection("jdbc:mysql://localhost:3306/databasegantt", " root ", " 123456 ");
我会给你一些建议:
- 将您的算法一分为二:从数据库中获取结果,然后在 JTable 中绘制它们。
- 如果可能,对结果进行分页。
- 不要在循环中使用字符串运算符“+”,而应使用 StringBuilder。
- 您可以使用 StopWatch(Spring 实用程序)来跟踪代码慢的地方并改进它。
推荐阅读
- java - 我想使用泛型制作数组
- android - 调用完成()时销毁活动后会发生什么?
- html - 表格行编辑功能在角度不起作用
- html - Bootstrap-select 未显示在我的网站上
- python-3.x - Flask,SQLAlchemy,无法将集合与对象或集合进行比较;使用 contains() 来测试成员资格
- android - 如何使用 kotlin 从 firebase 检索 pdf 文件?
- c++ - 结果函数中的递归函数是如何工作的?
- node.js - package.json 中的 "private": true 或 "private": false 是什么意思
- docker - Dockerfile:执行程序运行失败,创建覆盖挂载时出错,符号链接级别太多
- python - 为什么将迭代列表的不同值分配为字典的键只返回一个键(列表的最后一个值)?