4

我有两个场景 Login.fxml 和 MainView.fxml 以及两个不同的控制器 LoginController.java 和 MainViewControler.java

在 LoginController 中,我完成了登录并获取 JSessionID 的值并将其存储在对象中的整个过程,如下所示:

loginGateway = loginGateway(gateway);

现在在 MainViewController 中,我需要使用这个对象(loginGateway)来获取 JSessionID 并向服务器发出其他请求。但是我怎样才能在另一个控制器类(MainViewController.java)中访问这个对象????

4

1 回答 1

7

在传递参数 JavaFX FXML中使用解决方案的变体。

设置一个LoginManager同时引用LoginController和 的MainViewController.

  1. 使用loginManager创建登录屏幕loginController,并将对自身的引用传递给loginController.
  2. 当登录通过时,loginController通知loginManager登录sessionID
  3. 然后loginManager可以创建一个MainViewController,传递mainViewControllersessionID用主视图替换场景内容。

这是一些示例代码的链接,用于演示这种方法。 登录屏幕 主视图屏幕

于 2013-01-24T22:44:02.063 回答