我正在创建一个与数据库通信的简单java应用程序。多人将同时使用该应用程序。由于他们能够同时更改内容,例如,如果有人添加新用户,并且同一页面上有不同的人,我希望通知未进行更改的人员已对其进行了更改自上次加载数据库以来的数据库。
我在大学的讲师告诉我,WebSockets是实现这一目标的方法,但是在对Java中的WebSockets进行一些阅读之后,似乎它基于Web浏览器而不是Java应用程序之间。
可以使用WebSockets实现我的目标吗?或者,如果没有,那么实现这一目标的方法是什么?
答案 0 :(得分:1)
简单的答案是是的,您可以实现所需的
WebSocket是一种通信协议(@see RFC 6455)&使用Web浏览器不是必须。
您可以实现您想要对您的应用程序执行的操作,只需编写自定义WebSocket服务器,以便在您将数据库更改发送到其他客户端(称为服务器推送)的情况下满足您的要求
有几个java库可以完成工作,
netty WebSocket(我最喜欢的)
jWebsocket
Netty WebSocket是一个很好的开始,您可以在its project中找到编写自定义客户端和服务器的示例