0

我有一个 Swing 应用程序,用于执行大量计算、制作图表、生成报告等。在一个 JFrame 中,数据由 JTable 引入,执行计算并返回带有信息的 Map。然后在另一个JPanel,另一个窗口中,必须使用这个Map才能执行更多的计算。这个过程必须在 6 或 7 个窗口左右执行,并且在不同的上下文中,我的意思是不是所有的都在同一个 JFrame 中。问题是如何在窗口之间共享这些数据?如果我在一个 Web 应用程序中工作,我可以将这些数据放在会话范围或类似的东西上,然后获取它。但是我如何在 Swing 应用程序中执行此操作?非常感谢!!!

4

2 回答 2

1

您可以让父对象保存所有数据并为其创建 setter 和 getter。然后每个窗口都会调用 get/set 来访问数据。

您还可以对“模型-视图-控制器”模式进行一些研究。您让父对象保存所有数据对象。然后,您使用父级的“get”请求方法创建显示数据的窗口,并使用“set”方法更新数据的控件。

于 2013-09-20T22:56:35.607 回答
1

MVC 架构就是答案。将您的数据和业务逻辑保存在与 swing 无关甚至不知道 swing 存在的 java 类中。然后将此数据传递给您的 Swing 代码。ActionListeners调用修改数据的业务逻辑 。

于 2013-09-20T22:57:48.613 回答