JavaFX 桌面应用程序 - 与 Web 服务的套接字通信

Posted

技术标签:

【中文标题】JavaFX 桌面应用程序 - 与 Web 服务的套接字通信【英文标题】:JavaFX desktop application - socket communication with web serivce 【发布时间】:2014-10-18 09:00:52 【问题描述】:

我想开发一个具有实时数据刷新功能的简单桌面应用程序(在多个客户端上)。是否可以开发这样一个通过套接字与 Web 服务通信的应用程序?

这是我想知道的:

执行此操作的基本步骤是什么? 是否可以使用 Spring WebSocket 来做到这一点? 有代码示例吗?

【问题讨论】:

【参考方案1】:

是的,您绝对可以使用 Spring WebSocket 在多个客户端上进行实时数据刷新。 当然,客户端和服务器都应该支持 WebSocket 协议。 如需快速入门,请查看以下内容:http://spring.io/guides/gs/messaging-stomp-websocket/ http://start.spring.io/

有关服务器和客户端选项的完整参考,请查看此处:http://docs.spring.io/spring/docs/current/spring-framework-reference/html/websocket.html 特别是,它提供了关于何时使用它的简短讨论:http://docs.spring.io/spring/docs/current/spring-framework-reference/html/websocket.html#websocket-intro-when-to-use

【讨论】:

所有示例都显示了浏览器和服务器之间的通信。此示例是否适用于 javafx 或 java swing 应用程序之间的通信以在机器上运行(桌面应用程序)。我对理解这些概念没有什么问题 - 桌面应用程序和 REST Web 服务之间的通信。 看这里docs.spring.io/spring/docs/current/spring-framework-reference/… 好像 Spring 没有纯 websocket 客户端。有关 Java WebSocket 客户端的示例,请查看此处:eclipse.org/jetty/documentation/current/… 所以 (1) Spring 和 Spring WebSocket 可以帮助您开发服务器端 (2) 虽然 Spring 主要关注服务器应用程序,但您在开发桌面客户端应用程序时仍然可以使用 Spring 的强大功能,例如 Dependency Injection 或 RestTemplate 用于与 REST 服务器进行客户端通信,或 SockJsClient 用于与服务器进行 WebSocket 通信。 欢迎您,祝您好运。只是个人意见:在做任何其他事情之前,我会从一个非常简单的服务器和客户端通信原型开始。这样一来,您就可以在花费大量时间进行开发之前选择适合自己的和不适合的。

以上是关于JavaFX 桌面应用程序 - 与 Web 服务的套接字通信的主要内容,如果未能解决你的问题,请参考以下文章

在JavaFX中的openstreetmap上显示分层集群

《Netty+JavaFx实战:仿桌面版微信聊天》代码开源上云部署视频讲解,只为让你给点个Star!

打包JavaFX11桌面应用程序

javafx是啥

Java开发桌面程序学习——开源库 JFXUtils 让你更简单地进行JavaFX开发

JavaFX文档啥是JavaFX