Webanwendung in Java - Aktuelle Technologien

vilden

Lt. Junior Grade
Registriert
Juli 2007
Beiträge
481
Guten Morgen :)

Ich bin zur Zeit dabei in die Java Web-Entwicklung einzusteigen. Habe bereits Erfahrungen im Web-Bereich mit PHP, Javascript, JQuery, Ajax, Yii und Zend Framework. Fange also nicht bei Null an.
Habe bereits verschiedene Tutorials zu Applets, JSP, JSF usw. umgesetzt. Jedoch sind diese Tutorials meistens mehrere Jahre alt (was nicht bedeuten soll das diese schlecht sind) und evtl. nicht mehr sehr aktuell was die verwendete Technologie angeht. Für den Einstieg fand ich -> dieses <- Tutorial aus meiner Sicht für sehr nützlich.

Ziel meiner sehr kleinen Test-Webanwendung die bisher mit PHP, Ajax und MySQL umgesetzt wurde:


  • 3 voneinander abhängige Selectboxen (Nach Auswahl der ersten Selectbox werden die entsprechenden Datensätze in der nächsten Selectbox angezeigt)

  • Button welcher die vorhanden Datensätze aufgrund der Auswahl der Selectboxen abfragt und auf einer neuen Seite anzeigt

  • ansprechende GUI (muss nicht zwingend einen GUI Editor benutzen)

  • Datenbankoperationen - CRUD (SQLite)

  • simple Berechnungen durchführen (erst einmal egal ob diese vom Client oder Server übernommen werden)

Da ich mich nicht in die „falsche“ Richtung entwickeln möchte, würde ich gern von euch Erfahren, was Ihr in der Praxis einsetzt um aktuell Webanwendungen zu Entwickeln und welche Web-Technologien nicht mehr zum Einsatz kommen.


Vielen Dank.
 
Aktuell und JEE5?! ne :D
Wenn du was aktuelles willst nehm JEE7.

Schau dir Richfaces an (jsf-Framework von den JBoss Entwicklern(Red Hat). Des ist recht aktuell und wird gern in Firmen verwendet. Alternativen: MyFaces & PrimeFaces

Eventuell wäre das Playframework noch eine Alternative.

Ansonsten vielleicht Vaadin. Ist auch gerade am kommen.


edit: bzgl. Richfaces, schau dir auch das hier an: http://showcase.richfaces.org/
 
Zuletzt bearbeitet:
Kommt drauf an aus welcher Richtung du kommst: Der Standard (im professionellen Umfeld ab einer gewissen Größe) im Moment ist immer noch J2EE mit all den großen bekannten Frameworks die da noch so dranhängen. Wenn du nicht gerade wert darauf legst genau dort einzusteigen, würde ich die Finger davon lassen und lieber zu modernen Frameworks greifen. Meine Empfehlungen dazu wären:

Play Framework (mit Typesafe Activator) => https://www.playframework.com/ und/oder
vert.x => http://vertx.io/

Bei Play hast du sehr viel mehr Dokumentationen, Bücher, Samples... was den Einstieg leicht macht. Vert.x ist eher noch in der Anfangsphase (zumindest wenn man nach Verfügbarkeit von Online-Dokumentationen, Büchern und Beispielen geht) und setzt auf ein anderes Konzept. Macht meiner Meinung nach aber noch mehr Spaß als Play.

Wenn man aus der "klassischen" J2EE-Richtung kommt sind die von ihrer Arbeitsweise her vollkommen ungewohnt. Wenn man sich aber ohnehin unbelastet in etwas Neues stürzen will, dann bist du dort genau richtig. Im Gegensatz zu J2EE-Webaplikationen mit ihren unzähligen Layern und dem überbordenden Overhead sind diese neuen Frameworks klein, elegant und unglaublich gut skalierbar.

Abgesehen davon macht es wirklich Spaß damit zu arbeiten. Einfach weil man sehr schnell zu Ergebnissen kommt. Bei den klassischen Java-Frameworks schreibst und konfigurierst du dich tot. :)
 
Zuletzt bearbeitet:
Abgesehen davon macht es wirklich Spaß damit zu arbeiten. Einfach weil man sehr schnell zu Ergebnissen kommt. Bei den klassischen Java-Frameworks schreibst und konfigurierst du dich tot.

Das stimmt leider. Jedoch will man damit "klassich" in einem größerem Unternehmen arbeiten kommt man net dabei vorbei.
 
Spring Boot. Fürs Frontend je nach Anwendungsgebiet Apache Wicket oder AngularJS. Gegen Play spricht aber auch nichts. JSF und alle blafaces meide ich. Für dependency management und build eher gradle als maven.
 
Vielen Dank für die Antworten!

Ich habe die Anwendung mal in vaadin umgesetzt. Hat mir bis auf das Routing ganz gut gefallen, aber das ist wohl nur eine Sache der Gewohnheit. Werde die Anwendung aber noch mit Spring Boot und AngularJS (kenn ich mich aus) umsetzen.
 
Zurück
Oben