类似的问题还有很多,但这个问题略有不同。
我正在开发一个 JavaFX 应用程序。我的应用程序中有 mysql 数据库。我有大约 2500 个表,每个表大约有 1000 行。当用户选择表名称时,我想在 JavaFX 中显示这些表行。
我已经阅读了有关此问题的各种帖子,但在大多数情况下,他们创建了保存表(POJO)
数据的类,然后填充在TableView
使用 Controller
。
由于 JavaFX 中的 2500 个类根本不实用,我该如何管理如此大量的数据?
如果我为每一行创建对象,那么最后会有大约 1000 个或更多的对象,所以我认为这会导致系统内存不足错误。
有人知道我怎样才能实现这个目标吗?
最佳答案
How Can I manage this amount of data in JavaFX as making 2500 of classes in not at all practical?
使用通用的东西,例如String[]
作为表的数据类型。有一个类似的例子 here .
If I create object for every row, so at the end there will be around 1000 or more of object, So i think it will cause outofmemory error on system will low memory.
一点也不。例如,如果表中有 20 列,并且每个值都由一个 String
表示,例如 100 字节,则表中的每个对象大约为 2KB。 (这一切都相当慷慨;并且使用您自己的类作为对象类型而不是 String[]
不会增加明显的内存消耗。)1000 行大约需要 2MB。在大多数系统上,您可能有数百 MB 或更多的空间可供 JVM 使用。
关于java - 将数据库表填充到具有 1000 行的 JavaFX 表中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24467738/