目前,我有很多 Java,它们可以做各种漂亮的事情,我对此很满意。该代码是命令行驱动的,到目前为止效果很好,但我最近决定通过 Web 服务提供该功能。由于我的语言很复杂并且我对它的编写方式很满意,所以我不想经历将其移植到其他语言的痛苦。因此,我开始了一次谷歌之旅,寻找存在哪些网络服务器(在 Linux 机器上,尽管在没有这种限制的情况下听到答案很有趣)。

据我所知,似乎有两个可行的选择: 阿帕奇雄猫Sun Java服务器.

选择其中一个而不是另一个的原因是什么?每个人的优点是什么,缺点是什么?或者,也许还有第三种方法,它更容易、灵活且不那么麻烦。

任何人?

有帮助吗?

解决方案

简单,灵活的和不累赘,那将是码头,但也 Simpleweb 可能是有用的。你不要说太多关于你的软件,所以我真的不知道,但对于一个命令行程序,我不认为你需要的所有东西的JavaEE。结果 主流服务器这些。结果 我认为是Apache Tomcat VS Glassfish的(的Sun Java服务器)的讨论是无关紧要的满足您的需求,任何会做。

其他提示

用于Java Web应用程序,他们都有自己的长处和短处许多容器。如果你正在寻找一个容器来支持业务应用程序,你应该看看他们是如何不同,制定出适合您的业务和IT驱动程序。

关键的一点是,他们都支持Servlet规范 - 你的web应用可以在其中任何运行 - 这意味着你可以很容易地改变你的想法。他们中有些人也将支持更多的Java企业版规范的,所以可能是你需要太重了。

如果您是刚刚开始,我建议Tomcat的。这是基本的,但它是可靠的,快速的运行,并开始了,它有一个非常简单的基于Web的Web应用程序的部署界面。

你的问题实际上有点太含糊和宽泛了。事实上,您可以在以下位置运行 Java 代码: 任何 无论您使用哪种语言编写基于网络的界面,都可以使用您喜欢的机器。例如,您可以创建一个基于 PHP 的网站,该网站与“后端”Java 应用程序(您称之为“命令行应用程序”)交互。唯一的要求是服务器计算机上有 JRE。那么基本上作为 Web 界面的一切就足够了:CGI、PHP、ASP、Python 等等,应有尽有。只要它能够访问底层命令行运行时,这在 PHP 示例中是通过 exec().

但是Java,实际上是Java EE,也提供了Web应用程序编程接口:这 联合应用程序/服务程序接口, ,大型的Web组件 Java EE API. 。这使得与“命令行 Java 应用程序”的集成更加无缝。基本上,您可以将应用程序放在类路径中,然后在中导入/访问/使用它 Servlet真实的 Java方式:

YourApplication app = new YourApplication();
Result result = app.doStuff();
// ...

为了能够运行 JSP/Servlet(JSP 实际上也是一个 Servlet),您需要一个 具体的 Servlet API 的实现(整个 Java EE 只是一个抽象规范)。 阿帕奇雄猫 很好的开始,另一个流行的选择是 日食码头. 。这些是实现 Servlet API 的“简单”servlet 容器,而 Jetty 是一种更加嵌入式的方法(您可以将其配置为“普通”Java 应用程序并运行)。但如果您还需要支持/涵盖 Java EE API 的其他方面,那么您需要一个应用程序服务器,例如 太阳玻璃鱼 或者 杰博斯AS (顺便说一句,两者都使用 Tomcat 作为 servletcontainer 部分)。

要了解有关 JSP/Servlet 的更多信息,我可以推荐 Coreservlets.com 教程.

的Apache Tomcat应该做的好。

有关的web服务器中运行的代码的标准概念是“的Servlet API”从周日

本质上,它提供了Web服务器用来调用代码的一些接口,并定义了Web服务器的行为方式。这使您可以编写非常通用的代码,可以在各种web容器实现了这个Servlet API的运行。见维基百科文章的详细信息 - http://en.wikipedia.org/wiki/Java_Servlet

他们有各种尺寸太大,根据您的需要。够在自己的应用程序中嵌入一些小的,有些的非常的大。该servlet API允许你并不在乎。

对于一个初学者来说,最快捷的方式来启动和运行,是下载完整版的Netbeans,其中包括做这种工作的全力支持,并有一个内置的servlet容器。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top