使用JavaScript可视化Java程序

时间:2012-05-03 15:18:17

标签: java javascript raphael visualization

我有一个程序允许脚本文件与#34;竞争"在Tic Tac Toe等游戏中互相使用。

可视化在控制台中进行,看起来像这样:

|  XO |
| OX O|
|  X  |
- X is the winner! Meh..

不是很令人兴奋。

我正在考虑制作一个Swing可视化,但是在Raphaël JavaScript vector graphics library上看到一个演示文稿之后,我决定使用基于可视化浏览器的方式很酷,即使每个东西都在运行同一台电脑。

我是否需要一个完整的Web服务器来满足这一需求? JavaScript如何与Java程序通信?

5 个答案:

答案 0 :(得分:1)

  

我是否需要一个完整的Web服务器来满足这一需求? JavaScript如何与Java程序通信?

如果您要在浏览器中托管JavaScript并显示,那么浏览器需要能够通过HTTP请求从Java请求数据。虽然浏览器可以通过file:/// URI加载数据,但动态处理这些请求却非常尴尬。

但是,安装Web服务器是微不足道的。 Tomcat易于安装,如果您愿意,还有其他几个选项,例如TJWS(无关系),WinstoneLiteWebServerJetty。 ..

答案 1 :(得分:1)

如果您被迫为游戏引擎运行Java,我建议您使用Jetty来提供从浏览器处理HTTP请求的能力。它全部嵌入到您的应用程序中,并且不必担心必须将您的应用程序打包为WAR并在每次进行更改时进行部署。

[编辑] 只需阅读Tiny Java Web Sever,如果您需要更小的占地面积,它也可以替代Jetty。

答案 2 :(得分:1)

构建Swing接口将是最直接的解决方案,但这可能也是最混乱的。

如果您已经有一台Web服务器,Web浏览器解决方案可能是最令人满意的,但是设置和正确理解会有很多开销。然后,你可以使用不同的技术层次并混淆(java,JSP,HTML,javascript,css等)。

目前,使用HTML5和可用的javascript库,我认为Web界面是大多数界面的最佳选择,因此您也可以设置机器并将其用于下一个项目。

服务器(Java)和浏览器之间的任何通信都将通过浏览器的HTTP请求进行。

这可能有两种方式:

a)按浏览器HTML页面上的提交按钮并在服务器上呈现HTML页面作为响应(通常通过服务器端脚本编写,如JSP,尽管您可以通过Java代码生成整个页面)

b)通过在javascript中使用Ajax对服务器进行异步调用,服务器将响应数据,然后您可以使用javascript解释和呈现(可能是您尝试执行的操作的最佳解决方案)。有许多现成的javascript库可以帮助你解决这个问题,包括jQuery。

在方法b中,您基本上会在服务器端等待来自浏览器的帖子,然后您将使用XML,json甚至纯文本编写的页面进行响应。然后,您的javascript代码将解释数据并在浏览器HTML页面上呈现它(您将在应用程序的起始点加载它)。

答案 3 :(得分:1)

Javascript can communicate with a Java applet on the page(至少在理论上)。 Java applet在加载时会发出警告,并要求在机器上安装Java。

答案 4 :(得分:0)

是的,网络服务器是必要的。 Javascript可能会作为html表单的一部分运行。如果需要任何Java端处理,则需要Web服务器。因为html / javascript不可能与独立的java程序通信。但为什么需要一个java服务器端程序呢?逻辑不能完全用java脚本编写吗?

相关问题