如何将JavaFX GUI拆分为具有良好性能的fxml文件?

Sim*_*slé 5 java javafx fxml

我正在开发一个企业级项目,JavaFX 8被选为前端技术.目标平台是基于Windows的平板电脑,因此性能更可能是一个问题.

该应用程序由几十个屏幕(基本上是表单)组成,并决定将GUI描述拆分为无数的FXML文件,采用一种基于组件的方法(屏幕内的一些子窗格将被定义)例如,在他们自己的fxml中).Spring还用于插入所述组件内的控制器和服务.

主要的问题是,现在,启动时加载了200多个fxml(对于客户端应用程序),这需要大约20秒才能完成...这有点太明显了:(

我已经排除了Spring开销作为罪魁祸首(我们有一个Spring感知的FXMLLoader实现,但大部分时间都花在了load方法中).

我想知道这是否是正确的方法......在加载太多FXML文件时是否存在"可扩展性"问题?在JavaFX应用程序中尝试加载/缩小fxml的fxml数量的建议限制?

欢迎提出此性能问题的任何提示或类似情况反馈!谢谢.

Puc*_*uce 2

尝试仅加载您实际想要在启动时向用户显示的部分。

另请报告您在此处发现的性能问题: https: //javafx-jira.kenai.com/secure/Dashboard.jspa

另请注意将 FXML 文件编译为 .class 文件的功能请求(尚未实现): https: //javafx-jira.kenai.com/browse/RT-23527