Frage

Im Moment habe ich viel von Java, die alle Arten von netten Sachen tun und ich bin glücklich mit ihm. Der Code ist angetrieben Befehlszeile, das groß gewesen sein, so weit, aber ich vor kurzem beschlossen, ich die Funktionalität durch Web-Service machen will. Da meine komplex ist, und ich bin mit der Art und Weise glücklich es geschrieben ist, will ich nicht durch den Schmerz gehen, um es in anderen Sprachen zu portieren. Also habe mich auf einer Google-Reise, um herauszufinden, dargelegt, welche Web-Server (auf einem Linux-Rechner, wenn es um die Antwort zu hören, ohne diese Einschränkung interessant ist) vorhanden sein.

Von dem, was ich finden konnte, so scheint es, dass es zwei mögliche Optionen: Apache Tomcat und Sun Java Server .

Was ist der Grund, eine auf dem anderen zu wählen? was ist die Stärke von jedem und was sind die Schwächen? Oder vielleicht gibt es eine dritte, die viel einfacher, flexibler und weniger umständlich.

Wer?

War es hilfreich?

Lösung

Einfach, flexibel und nicht umständlich, das wäre Jetty , aber auch SimpleWeb könnte nützlich sein. Sie brauchen nicht viel über die Software sagen, also ich bin nicht wirklich sicher, aber für ein Kommandozeilen-Programm, ich glaube nicht, dass Sie alle JavaEE Sachen brauchen.
Der Mainstream-Server ist diese .
Ich denke, die Apache Tomcat vs Glassfish (Sun Java Server) Diskussion für Ihre Bedürfnisse irrelevant ist, jeder tun würde.

Andere Tipps

Es gibt viele Container für Java-Webanwendungen , sie alle haben ihre eigenen Stärken und Schwächen . Wenn Sie sich für einen Container suchen eine Business-Anwendung zu unterstützen, sollten Sie vielleicht einen Blick auf, wie sie sich unterscheiden und arbeiten heraus, welche passt zu Ihrem Unternehmen und IT-Treiber.

Das Wichtigste ist, dass sie alle Unterstützung der Servlet-Spezifikation - Ihre Webapps in jedem von ihnen laufen kann - was bedeutet, dass Sie es sich leicht ändern kann. Einige von ihnen werden auch der Java Enterprise Edition-Spezifikationen unterstützen, so kann für Ihre Bedürfnisse zu schwer sein.

Wenn Sie gerade erst begonnen, würde ich vorschlagen, Tomcat. Es ist einfach, aber es ist zuverlässig, schnell zu laufen und starten, und es ist eine wirklich einfache Web-basierte Webapp Deployment-Schnittstelle erhalten hat.

Ihre Frage ist eigentlich ein bisschen zu vieldeutig und breit. Sie können in der Tat laufen Java-Code in jede Maschine, die Sie mögen, unabhängig von der Sprache programmiert Sie die webbasiertes Interface. Sie können zum Beispiel eine PHP-basierte Website erstellen die wirkt mit einem „Back-End“ Java-Anwendung ( die „Kommandozeilen-Anwendung“, wie Sie es nennen). Die einzige Voraussetzung ist eine JRE auf der Server-Maschine zu haben. Dann im Grunde alles, was als Web-Interface genügt: CGI, PHP, ASP, Python, etcetera, nennen Sie es. Solange es den Zugriff auf die zugrunde liegende Kommandozeilenlaufzeit hat, die im PHP Beispiel soll durch exec() erfolgen.

Aber Java eigentlich Java EE, bietet auch eine Web Application Programming Interface: die JSP / Servlet API , die Web-Komponente der großen Java EE API . Diese machen die Integration mit der „Command Java-Anwendung“ viel mehr nahtlos. Sie können im Grunde legen Sie Ihre Anwendung nur in dem Classpath und Import / access / verwenden es in einer Servlet Klasse die real Java Art und Weise:

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

Um JSP / Servlet (JSP ist am Ende tatsächlich auch ein Servlet) ausführen kann, müssen Sie ein Beton Umsetzung des Servlet-API (die gesamte Java EE ist nur eine abstrakte Spezifikation). Apache Tomcat gut ist, mit zu beginnen, den anderen beliebten Alternative Wesen Eclipse-Jetty . Das ist ‚einfache‘ servletcontainers die Geräte die Servlet API, mit Jetty ein eingebetteter Ansatz davon zu sein (Sie konfigurieren können und es als „Plain Vanilla“ Java-Anwendung ausführen). Aber wenn Sie Unterstützung benötigen / decken die anderen Aspekte der Java EE API auch, dann müssen Sie einen Anwendungsserver, wie JBoss AS (beide, die durch die Art und Weise verwendet Tomcat als die servletcontainer Teil).

Weitere Informationen über JSP / Servlet zu lernen, kann ich die Coreservlets.com Tutorials empfehlen .

Apache Tomcat sollte gut tun.

Das Standardkonzept für die Ausführung von Code in einem Web-Server ist die "Servlet API" von Sun.

Im Wesentlichen bietet es einige Schnittstellen, die der Webserver verwendet den Code aufzurufen, und legt fest, wie der Web-Server verhalten soll. Auf diese Weise können Sie sehr generischen Code schreiben, der in einer Vielzahl von Web-Container ausgeführt werden können, die die Servlet API implementieren. Siehe Wikipedia-Artikel für Details - http://en.wikipedia.org/wiki/Java_Servlet .

Sie kommen auch in allen Größen, je nach Bedarf. Einige klein genug, um in Ihrer eigenen Anwendung einbetten, einige sehr groß. Der Servlet-API ermöglicht es Ihnen nicht zu kümmern.

Für einen Anfänger, der schnellste Weg, um aufzustehen und läuft, ist die Vollversion von NetBeans herunterzuladen, die für das Tun diese Art von Arbeit volle Unterstützung erhalten, und hat in Servlet-Containern ein gebaut.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top