有许多类似的问题,但这个问题略有不同。
我正在开发一个JavaFX应用程序。我的应用程序中有mysql数据库。我有大约2500个表,每个表大约有1000行。我想在用户选择表名时在JavaFX中显示这些表行。
关于此,我已经阅读了各种帖子,但在大多数情况下,他们创建了保存表(POJO)
数据的类,然后使用{{1}填充TableView
}。
如何在JavaFX中管理这么多数据,因为2500个课程根本不可行?
如果我为每一行创建对象,那么最后会有大约1000个或更多的对象,所以我认为它会导致系统上的内存错误会导致内存不足。
有人知道我怎么能实现这个目标?
答案 0 :(得分:0)
如何在JavaFX中管理这些数据量为2500 课程根本不实用?
使用通用名称,例如String[]
作为表格的数据类型。这是一个与此here类似的示例。
如果我为每一行创建对象,那么最后会有 1000个或更多的对象,所以我认为它会导致outofmemory错误 系统内存不足。
完全没有。例如,如果您的表中有20列,并且每个值由String
表示,例如100个字节,那么表中的每个对象大约为2KB。 (这一切都非常慷慨;并且使用您自己的类作为对象类型而不是String[]
不会增加明显的内存消耗。)1000行然后需要大约2MB。在大多数系统上,您可能有数百MB或更多MB可用于JVM。