2009-05-05 132 views
0

如何获取一个用于桌面或applet的java库,并使其可以用于网页的功能?我知道并非所有的东西都适用于网络,但是你可以在apache/tomcat设置服务器中调用一个“常规”java类,它“工作”吗?你需要做些什么才能使它与网页一起工作?如何将Java库移植到Web上?

我对jgrapht的web感兴趣,但它看起来像所有的桌面或applet,我不知道它有可能将其图形返回到浏览器,但也许它的库和生成的.png呈现浏览器。

虽然有小应用程序存活或死亡的争论,但我目前对使用小应用程序并不感兴趣,因为它看起来已经死了,尽管在最新更新6u10中有了新的可能生活。我不知道我也想投资JavaFX。

回答

1

约翰尼,事情是,你必须决定你的意思。例如,您可以在服务器端代码中使用JGraphT;该图可以用许多不同的方式可视化,如JGaph或graphviz。然后,您将以可在网络上运行的某种形式输出可视化文件,并将其放入您的网页中。在JGraph中,这可能意味着生成SVG或PNG的打印界面。

或者您可以通过简单的图形走路将图形结构显示为JSON,并在浏览器中使用Javascript对其进行解释。

通常很难回答这个问题,因为它很大程度上取决于您的使用方式。

1

是的,可以在Web应用程序中使用java类或jar文件,但它也取决于您想要用它做什么。

例如,如果库是用于数学的,并且想要将结果返回给基于Web的应用程序上的用户,则这当然是可能的。我可以给出很多其他例子,但它们都是一样的。

至于显示图表,我已经成功地使用JFreeChart在一个Web应用程序使用Apache Wicket(其中岩石顺便说一句)。

所以要回答你的问题,你并不需要“移植”库,你只需要使用它并将其输出到网页而不是Java桌面GUI。

当然,它们可能是一些专门为Java图形界面设计的库,如Swing或AWT。但是在大多数情况下,在J2EE环境或J2SE环境中使用Java库没有区别。

1

对于您的建议,没有封闭的答案:将Java库移植到浏览器环境并使用其功能。

如果你有兴趣的图形的东西,这里有一些事情你可以尝试:

Open Flash Chart - 一个脚本的Flash应用程序,将产生图形

Bluff - 产生图

一个Javascript库

processing.js - 一个出色的'处理'库到Javascript的端口

至于在浏览器中访问基于Java的功能,那里这是一些方法。一种是使用像GWT这样的工具集,它将Java合并到HTML/Javascript/Java应用程序中。另一种是使用基于AJAX的技术,如Direct Web Remoting。这真的取决于你想要完成什么。