# Was ist mit Java möglich?



## msp (27. Jan 2011)

Hallo zusammen,

was java und webanwendungen angeht bin ich vollkommener neuling. 

Ich soll eine Webanwendunng  programmieren (die im Browser mit standard HTML läuft) die auf eine psql Datenbank zugreift.
Aufgabe ist es die Inhalte der Datenbank anzuzeigen und zu modifizieren. 
Größtenteils reicht mir eine Tabellarische Darstellung. Allerings sollen zum Teil auch Daten in Diagrammen angezeigt werden. 

Meine Frage an euch ist jetzt ob sowas mit java einfach und schnell zu entwickeln ist. Leider habe ich als java neuling Probleme alle Möglichkeiten von java zu überschauen. 
Da gibt es jsp, Servlets und Java Beans. Was nimmt man für so eine Aufgabe am besten?

Ausprobiert habe ich bisher asp.net c#. Damit war es sehr einfach Datenbanken in Tabellarischer oder Diagrammform darzustellen. Dort hatte ich einen WYSIWYG Editor in dem ich einfach nur alles parametrieren musste um erste Ergebnisse zu sehen. von 0 bis zum ersten Diagramm waren es gerade einmal 2 Stunden. Läuft das in Java ähnlich? oder muss ich mir das völlig anders vorstellen?

Grüße
MSP


----------



## The_S (27. Jan 2011)

Sowas geht auf jeden Fall. Die primitivsten Basics, mit denen du zum Ziel kommen wirst, sind JSP und Servlets. Natürlich gibt es aber auch noch Frameworks, die dir die Arbeit erleichtern. Bspw. JSF, Wicket, Struts, GWT, ...


----------



## msp (27. Jan 2011)

Was meinst du mit Primitiv? gibt es da noch andere "bessere" Lösungen?

Heisst es gibt fertige Librarys die mir aus meiner Datenbank ein Chart oder eine Tabelle genrieren? Oder muss ich das alles selbst programmieren?


----------



## Niki (27. Jan 2011)

nein es gibt nicht fertige frameworks die dir direkt aus einer datenbank ein chart erstellen. aber es gibt verschiedene libs die du verwenden kannst

zum erstellen von charts kann ich dir jfreechart empfehlen. für die oberfläche könntest du dir spring mvc anschauen. da würd ich zuerst einmal das tutorial machen damit du ein verständnis dafür bekommst. für die datenbank zugriffe kannst du dann auch spring mit einfachen jdbc templates nehmen. das kannst du dann immer noch später durch einen OR-Mapper ersetzen.


----------



## bronks (27. Jan 2011)

msp hat gesagt.:


> ... Ausprobiert habe ich bisher asp.net c#. Damit war es sehr einfach Datenbanken in Tabellarischer oder Diagrammform darzustellen. Dort hatte ich einen WYSIWYG Editor in dem ich einfach nur alles parametrieren musste um erste Ergebnisse zu sehen. von 0 bis zum ersten Diagramm waren es gerade einmal 2 Stunden ...


Jetzt muß ich mal ganz doof zu Deinem vorgehen bzgl. dem o.g. "Ausprobieren" nachfragen: Ohne, sich vorher ausgiebig mit ASP.NET und C# zu beschäftigen, hast Du einfach Visual Studio geschnappt und innerhalb von 2 Stunden eine Tabelle und ein Diagramm im Internetbrowser angezeigt bekommen, welches auf Datenbankdaten basiert?

War das so?


----------



## msp (30. Jan 2011)

genau so war das. 

Und ich muss sagen das mich das schon ziemlich beeindruckt hat. 

Momentan scheint mir so etwas mit j2ee wesentlich komplizierter zu sein.


----------



## bronks (31. Jan 2011)

msp hat gesagt.:


> genau so war das. Und ich muss sagen das mich das schon ziemlich beeindruckt hat.


Ja, genauso ist es mir vor einem halben Jahr auch gegangen.   Ohne sich irgendwie besonders einarbeiten zu müssen funktioniert der Spaß eigentlich sofort. Auch wenn man Diagramme im Code zusammenbaut stellen sich eigentlich keine Fragen und WTFs.



msp hat gesagt.:


> Momentan scheint mir so etwas mit j2ee wesentlich komplizierter zu sein.


Niki und The_S haben u.a. empfohlen: jFreeChart, Spring und JSF. Für die ganz grobe Einarbeitung gebe ich Dir, soweit Du ein einigermaßen geübter Programmierer mit gutem Gedächtnis und guter Auffassungsgabe bist, ca. 10 volle Tage. 

Die Darstellung eines einfachen Diagrammes und einer Tabelle, aufgrund von Datenbankdaten, investiert man > 2 Arbeitsstunden wenn man Übung hat und gelegenlich ein neues Diagramm baut.


----------



## msp (31. Jan 2011)

Das die Einarbeitungszeit relativ hoch ist habe ich schon gemerkt. 

Es gibt einfach sehr viele verschiedene Systeme bei denen man erst einmal die zusammenhänge begreifen muss. 

Das System was mir momentan am einfachsten und Sinnvollsten erscheint ist das Google Web Toolkit + Ext Gwt. 

Damit werde ich jetzt mal mein Glück versuchen. Bist jetzt macht dieses System auf jeden Fall Spaß


----------



## Wildcard (2. Feb 2011)

> nein es gibt nicht fertige frameworks die dir direkt aus einer datenbank ein chart erstellen.





> Jetzt muß ich mal ganz doof zu Deinem vorgehen bzgl. dem o.g. "Ausprobieren" nachfragen: Ohne, sich vorher ausgiebig mit ASP.NET und C# zu beschäftigen, hast Du einfach Visual Studio geschnappt und innerhalb von 2 Stunden eine Tabelle und ein Diagramm im Internetbrowser angezeigt bekommen, welches auf Datenbankdaten basiert?



Warum sollte das mit Java nicht gehen? Wenn ich das Problem nicht völlig falsch verstanden habe gibt es doch genau dafür Reporting Tools.
Die bekanntesten Opensource Vertreter sind IMO BIRT und Jasper Reports.
BIRT ist mächtiger und komfortabler, aber deutlich schwergewichtiger als Jasper.
Für beide Tools stehen grafische Designer zur Verfügung.

Hier sieht man wie einfach sowas in ein paar Minuten funktioniert:
Created by Camtasia Studio 3
Und so sehen einfache Reports aus:
Classic Models Top Selling Products


----------



## msp (3. Feb 2011)

diese Tools machen auf mich wirklich einen Guten Eindruck. Die werden mir die Arbeit um einiges erleichtern. 

Vielen Dank für diesen Tipp!


----------



## bronks (3. Feb 2011)

Wildcard hat gesagt.:


> Warum sollte das mit Java nicht gehen? Wenn ich das Problem nicht völlig falsch verstanden habe gibt es doch genau dafür Reporting Tools ... BIRT ...


Doch da liegt ein kleines Mißverständnis vor, denn mit nacktem Java bricht man sich dabei die Haxn. JFree mach es auf seine Weise überhaupt möglich Diagramme vernünftig zu erzeugen. JSF soll sich bitte darum kümmern, das von JFree erzeugte Bildchen + eine Tabelle in den InternetBrowser zu zaubern.

BIRT dagegen ist eine Reportingmaschine, wie Crystal Reports, welche man ebenfalls mit Java verwenden kann.


----------



## Wildcard (3. Feb 2011)

> Doch da liegt ein kleines Mißverständnis vor, denn mit nacktem Java bricht man sich dabei die Haxn


BIRT und Jasper Reports sind doch naktes Java.


> Jetzt muß ich mal ganz doof zu Deinem vorgehen bzgl. dem o.g. "Ausprobieren" nachfragen: Ohne, sich vorher ausgiebig mit ASP.NET und C# zu beschäftigen, hast Du einfach Visual Studio geschnappt und innerhalb von 2 Stunden eine Tabelle und ein Diagramm im Internetbrowser angezeigt bekommen, welches auf Datenbankdaten basiert?


Das Vorgehen ist doch genau das gleiche, ersetze Visual Studio mit Eclipse dann erreicht man das gleiche Ergebnis (vermutlich ist BIRT sogar mächtiger als das Visual Studio  Gegenstück).


----------



## bronks (3. Feb 2011)

Wildcard hat gesagt.:


> ...  (vermutlich ist BIRT sogar mächtiger als das Visual Studio  Gegenstück).


Ahhh ... sorry ... Mißverständnis doch evtl. auf meiner Seite. Google hat mir gerade erzählt, daß Du wahrscheinlich die SQL Server Reporting Services meinst, welche auch im Visual Studio laufen. Aber die kenne ich garnicht und als Javaprogrammierer steigere ich mich da auch nicht irgendwie zeitraubend in das Thema rein. Ich meine dagegen MS Chart in ASP.NET. Das ist eine echt sehr feine Sache, welche Java abgeht.


----------



## maki (4. Feb 2011)

JFreeChart kennst du?


----------

