Java applet与tomcat服务器上的servlet通信

我一直在努力解决如何解决这个问题,但我不知道从哪里开始。

我有一个用Java编写的游戏applet,我试图通过网络制作多人游戏。 目前它是一个独立的应用程序,但最终它需要在某种网页上,客户可以通过浏览器访问它并相互对抗。

我一直在想,每个客户端小程序都可以使用带有一个在tomcat服务器上不断运行的小程序的套接字进行通信。 服务器上的这个小程序将处理传入套接字连接,创建新线程处理每个连接,维护连接客户端列表以及设置游戏。 客户也可以通过与服务器通信从数据库中获取有关过去游戏等的信息。

例如,我希望客户能够开始游戏。 然后通知其他客户他已经开始了一个游戏并且可以加入游戏。 然后,当主机点击开始游戏时,所有其他客户端都会收到通知,并且游戏将在其小程序中开始。 谁先解决这个难题,然后点击完成。 他的分数将被发送到服务器小程序,然后将结果转发给每个连接的客户端。

所以我有一些问题

  • 这听起来像是一个合理的计划吗?

  • tomcat如何对此提供帮助?

  • 我将如何将它部署到tomcat? 我在eclipse中这样做,并设置了一个本地tomcat服务器。 我只是在eclipse上运行服务器上的类,然后socket连接到applet上的http:// localhost / packagename / classname?

  • servlet需要扩展哪些类才能连接? 由于servlet是一个非Http Servlet,因此将从一个applet进行连接?

  • 你能推荐一些文档,或者提供一些使用tomcat与服务器applet进行通信的客户端applet的代码示例吗? 我见过的所有示例都只是使用Http将信息传递给servlet的html表单。


  • 如果您的应用程序不需要通过原始套接字与服务器进行实时通信(并且听起来像您的应用程序没有),那么最好使用标准Web协议来为您的小应用程序与服务器进行通信。

    一种选择可能是HTTP / JSON。 你的applet可以建立到servlet的HTTP连接,并且该servlet将生成一个JSON对象,该对象表示服务器想要发送给客户端的消息。 客户端将启动一个将循环的线程,对您的servlet进行异步阻塞调用以轮询新数据。

    这种方法的主要优点是,将来你应该如此倾向于使用客户端Java applet,并用HTML5和Javascript取而代之。

    GSON是一个用于JSON序列化/反序列化的库。 而java.net.URL是你用来连接到你的applet中的servlet的东西。


    是。 你所描述的是applet-servlet通信。 通常,你的applet会发送消息给servlet,然后跟踪与其他所有客户端applet的通信。

    有几个在线applet-servlet通信的例子。 这是一个旧的,但仍然有效,代码没有格式化。

    http://docstore.mik.ua/orelly/java-ent/servlet/ch10_01.htm

    小程序和可以与之通信的服务器存在安全限制,因此需要注意其他事项。

    链接地址: http://www.djcxy.com/p/55937.html

    上一篇: Java applet communicate with servlet on tomcat server

    下一篇: Applet in client