4

Spring 不能很好地处理在其应用程序上下文之外创建的 bean。

让我使用 JFormDesigner 设计表单然后使用 Spring 管理组件操作的最佳方法是什么?

有几种集成 Spring 和 Swing 的方法(例如https://www.ibm.com/developerworks/java/tutorials/j-springswing/),但这种方法涉及您必须扩展您希望使用的每个控件,一个看起来会增加很多不必要的开销的方法。这种方法也不允许我使用 JFormDesigner 来模拟我的表单的外观。

我还查看了Spring 富客户端项目,但它看起来还没有迁移到 Spring 3,尽管在他们将项目托管移动到 Github 后,这看起来很可能会重新开始开发。

4

1 回答 1

1

我有一个使用 Swing、JFormDesigner 构建面板、Spring 和 Spring RCP 的应用程序。对于每个视图,都有一个扩展 RCP 的视图类,它AbstractView引用了面板(我们称之为)和操作,因此它可以管理它们。每个视图都有一个主面板(可以使用 JFormDesigner 构建),这是视图引用的主面板。我不知道这是否是最好的方法,但效果很好。

我遇到的主要问题是,如果您想让它们成为 Spring bean,那么定义引用面板的简单侦听器需要太多配置。如果不这样做,则必须手动传递对所有需要的 Spring 资源(面板、服务接口等)的引用,这也是很多工作。我通过将最常见的 Spring bean 的静态 getter 写入可以访问应用程序上下文的类来部分解决了这个问题。

配置 Spring 来管理动作和表单有什么问题?在我们的应用程序中,面板被简单地定义为应用程序配置中的视图属性,没有什么特别之处。

于 2010-09-22T22:03:15.357 回答