我编写了一个基于SOAP的Web服务,它可以在Tomcat服务器上正常运行。 Web Service服务本身是一个基于Spring MVC的Web服务,它在Tomcat应用程序服务器上运行。
现在我需要编写一个胖客户端,它将是一个独立的Java应用程序,它将使用Web服务的服务。我认为我是正确的,因为客户只需要了解服务细节(即操作)而不需要知道其他任何内容。
我不确定的是我应该为客户使用的架构和环境。客户端应用程序将基于Swing,但是可以将Spring与Swing一起使用吗?
在网络服务上,我有以下设置
view - >服务 - >模型
客户端应用程序基本上是一个配置工具。它使用Web服务配置用户帐户。这意味着客户端应用程序实际上不会向任何数据库写入任何内容。它只是使用Web服务的服务来更改“用户帐户”,并可能查看帐户列表。
我的问题确实是 - MVC设计是否适合这种用例 - 通常Spring用于基于Web的应用程序。使用Spring与基于Swing的客户端有什么好处吗? - 是否有任何替代或更好的解决方案/设计/架构可以实现相同的目标?
显示Spring与Swing应用程序结合使用的示例非常有用。
提前致谢。
答案 0 :(得分:3)
Spring MVC不适合基于Swing的客户端。使用核心Spring框架和Jersey等JAX-RS实现在tomcat中提供简单的REST Web服务。 Jersey还提供了一个相应的客户端API,您可以在Swing应用程序中使用它来调用REST服务。
答案 1 :(得分:2)
如果您已决定将Swing作为您的平台,您可以看两个选项:
(1)Net Beans富客户端平台
http://netbeans.org/kb/trails/platform.html
(2)你可以卷起袖子,使用一个名为Swixml的低级但非常灵活的框架来编写你自己的应用程序
在尝试其他人之前先试试Swixml,这可能会给你带来惊喜。
答案 2 :(得分:1)
您可以使用Spring Integration后端作为集成层来实现基于Swing的瘦客户端应用程序。它可以公开接受简单Java类型或DTO的网关。您的Swing演示者/控制器与这些组件交互以调用远程Web服务。