您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

如何从服务器向客户端发送消息?

如何从服务器向客户端发送消息?

听起来像WebSockets的任务。它是Java EE 7的一部分,因此Glassfish应该是最早支持它的AS之一。

拦截数据库访问,可以使用@PostUpdate@PostPersist。这是相关的问题。

有很多方法可以执行所谓的服务器推送来通知已连接的客户端:

编辑:在Java世界中,有两个框架是在即开即用的情况下实现服务器推送(反向Ajax)的。如果您熟悉GWT,我建议您Errai。其他选择是Atmospere。Atmospere的缺点是,它需要独立的运行过程,该过程位于Web应用程序旁边的常规应用程序服务器旁边。我一年前就在玩它,所以从那以后可能已经改变了。

通常,很难为您提供具体的代码,因为这取决于您选择的框架。我对 很熟悉,因此这里有一个例子:

@ApplicationScoped
public class TickerService {

  @Inject
  private Event<Tick> tickEvent;

  private void sendTick() {
    tickEvent.fire(new Tick());
  }
}

@EntryPoint
public class TickerClient {
  public void tickHappened(@Observes Tick tick) {

    // update the UI with the new data
  }
}

使用Errai的其他好处是可以直接在服务器和客户端上使用 ,另一件事很好,那就是使用Web套接字(如果受支持),如果没有支持的话,可以使用其他解决方案。

无论您选择什么,它都应该适合您现有的基础结构和客户端UI框架。

其他 2022/1/1 18:21:26 有495人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶