2010-06-29 4 views
7

Alles, was ich herunterlade, scheint auf die Verwendung von Java EE angewiesen zu sein. Ich muss eine einzelne Seite erstellen, um Anfragen an sie zu bearbeiten und ein kleines bisschen Verarbeitung basierend auf Parametern durchzuführen. Dies ist in ein anderes Framework einzubinden, das diese URL routinemäßig aufruft.Kann ich Java EE vermeiden, um eine leichtgewichtige Webseite zu erstellen?

Ich möchte eine schnelle und einfache Möglichkeit, eine Seite mit etwas Verarbeitung zu erstellen. Gibt es einen einfachen Weg, dies mit Java zu tun? Ich benutze Java, weil ich mich mit Java auskenne. Ich habe SE jahrelang benutzt und habe in EE gearbeitet, aber ich will nicht all die Sachen, die mit EE kommen.

Sollte ich vielleicht nur Java komplett vermeiden und etwas anderes verwenden. Dies muss in einer Linux-Umgebung bereitgestellt werden.

+1

Javascript? PHP? Sie scheinen in diesem Fall gangbare Optionen zu sein. – corsiKa

+0

Ich stimme Ihnen vollkommen zu. – naikus

Antwort

4
  1. Sie müssen Tomcat (oder Anlegesteg oder über Servlet-Container - Anlegesteg hat eine integrierbare Version btw)
  2. Sie benötigen eine .jsp Datei und optional ein HttpServlet

Im Allgemeinen ist es keine gute Praxis um irgendeinen Verarbeitungscode in eine JSP zu schreiben, aber wenn es wirklich einfach ist und nicht erweitert wird, lege einfach die Logik dorthin - es wird trotzdem in ein Servlet übersetzt.

+1

Das OP braucht nicht ** Tomcat oder was auch immer, er ** könnte ** Tomcat oder Jetty oder JBoss oder GlassFish oder WebLogic usw. verwenden. Die Laufzeitumgebung ist nicht wirklich wichtig, der Punkt ist, dass das OP kann benutze einen kleinen Teil von etwas Großem. –

+0

@ Pascal. Aber ich möchte Java EE nicht herunterladen, wenn ich es vermeiden kann. Und ich würde es vorziehen, den Schmerz von JBoss oder einem anderen Anwendungsserver zu vermeiden, wenn ich es vermeiden kann. – uriDium

+1

@uriDium: Das ist nicht mein Punkt. Mein Punkt ist, dass, selbst wenn Ihr Unternehmen sein gesamtes Projekt auf einem vollständigen Java EE-Server ausführt, Sie einen kleinen Teil von Java EE verwenden können. Nun, wenn Sie die Wahl haben, wird Tomcat oder Jetty für eine einzelne Servlet-Anwendung in Ordnung sein. –

0

Es klingt, als könnten Sie PHP für Ihre Verarbeitung verwenden. Rufen Sie die Seite auf und senden Sie die Parameter an sie, berechnen Sie sie und geben Sie das Ergebnis zurück.

+1

PHP in einer Java-Frage zu empfehlen ist wie das Werfen von Natrium (* aka Sodium *) zu Wasser. – Esko

+0

@Esko: Das OP * hat * gesagt, er sei offen für etwas anderes als Java, wenn es noch einfacher wäre. In der Tat, wenn das OP ein rein Java-nur-Typ ist, könnte dies eine gute Chance sein, in etwas andere Technologie zu dabbeln, obwohl es länger dauern wird, um mit der Lernkurve der neuen Technologie und so weiter zu beginnen ... – FrustratedWithFormsDesigner

+0

Definitiv offen für alles an diesem Punkt. Ich dachte darüber nach, sich in Ruby On Rails zu versuchen. Der einzige Grund, warum ich mich zu diesem Zeitpunkt für Java entscheide, ist, dass ich die meiste Erfahrung damit habe. – uriDium

-1

Ich würde Sinatra empfehlen es ist ein sehr leichtes Ruby-Web-Framework.

5

Ich benutze SE seit Jahren und habe einige Arbeit in EE, aber ich will nicht all die Sachen, die mit EE kommt.

Dann verwenden Sie einfach ein Servlet und das ist alles. Nichts, ich wiederhole NOTHING, zwingt Sie, "all das Zeug" zu verwenden und Ihre Frage ist entweder eine freie Ratte oder zeigt ein tiefes Missverständnis.

+1

+1, stimme zu. Das Problem, das ich finde, ist, dass die meisten Tutorials annehmen, dass Sie alles und die Küchenspüle benutzen wollen, damit sie erfundene und überkomplizierte Beispiele von einfachen Dingen mit sehr schwerem EE-Zeug schreiben. Ich würde gerne ein Tutorial sehen, das eine Webseite in Java mit dem absoluten * Minimum * an Aufwand und Mühe abdeckt, aber sie sind schwer zu finden. – FrustratedWithFormsDesigner

+0

Wahrscheinlich tiefe Missverständnisse um ehrlich zu sein. Ich habe die EE-Architektur nie so gut bekommen. Ich habe nur ein bisschen getan. Meistens habe ich SE in einer Serverumgebung gestopft. – uriDium

+0

@uriDium: Kein Problem. Was ich nicht verstehe, ist der Teil, der einen dazu bringt zu denken, dass man mit Java EE keine "einfachen Dinge" machen kann. Schreiben Sie einfach ein 'Servlet', das ist alles was Sie brauchen. –

0

Wenn Sie mit Java nicht besonders vertraut sind und experimentierfreudig sind, sollten Sie sich nodejs ansehen. Es läuft auf V8 Javascript Engine und läuft auf Linux. Es gibt ein paar fraemworks für NodeJS für Web-Anwendungen:

Express.js und spludo

0

wie bereits erwähnt, können Sie dies mit Steg sehr einfach zu tun und ein Servlet, müssen Sie nur, wenn Sie nicht einmal eine JSP brauchen benötigen eine URL, die basierend auf Anforderungsparametern eine Verarbeitung durchführt und eine Antwort zurückgibt.

Für die Entwicklung ist es sehr einfach, ein dynamisches Webprojekt in Eclipse zu erstellen, folgen Sie einfach den Schritten in this article.

Das sagte, ich glaube nicht, dass Java eine gute Wahl für wirklich leichte Sachen ist. PHP ist wahrscheinlich die einfachste Sache, wenn Sie es nur gestern arbeiten wollen.

2

ja, alle Servlet-basierten Lösungen sind ziemlich mollig.

Anlegesteg ist in Ordnung, aber der Download ist 20MB. das ist lächerlich.

Derzeit ist wahrscheinlich die beste Wahl com.sun.net.httpserver, die in JDK 6 gebündelt ist.Sie können Ihren Service einfach implementieren.

0

Sie können Java with FastCGI verwenden. Dies ist sehr flexibel, aber auch ein wenig Low-Level für die meisten Java-Programmierer.

Wenn Sie keine Angst vor Servlets (sie sind nur ein sehr kleiner Teil von Java EE!), Kann ich JAX-RS empfehlen, es ist ziemlich einfach, mit zu beginnen. Wenn Sie clientseitig JavaScript-basiert sind, können Sie die Verwendung von JSP vermeiden (was ich Ihnen empfehlen würde zu vermeiden).

Siehe zum Beispiel backbone-jax-cellar. Die Java-Quelle ist here. Für eine Java-App ist dies ein geringes Gewicht. Er dreht sein eigenes DAO, aber das ist der Preis, den Sie für die Verwendung von Java und SQL und keine Abhängigkeiten (außer JDBC) zahlen. Der Code erinnert an objektorientiertes PHP, wenn Sie mich fragen. Der Punkt ist, dass, wenn Sie einen JavaScript-Client haben, Sie keine Template-Rendering oder all das Cruft benötigen und eine REST-Schnittstelle sollte ausreichen.

Wenn Sie zu viel Angst vor den schweren Build-Systeme sind, machte ich eine example REST Todo app backend (die eine bestehende Frontend verwendet), die nur eine POSIX-System benötigt, das JDK und sqlite3 und erhält eine eigene andere Abhängigkeiten (einschließlich Webserver). Ich habe kein DAO benutzt. Die Repository-Startseite hat eine README.

Eine andere Möglichkeit ist das Play Framework, das Java EE nicht verwendet. Es ist jedoch ziemlich schwer. Voll ausgestattet aber. Sie müssten definitiv eine IDE dafür verwenden, die Sie für die Entwicklung von JAX-RS/FastCGI-Anwendungen nicht benötigen.

Verwandte Themen