# Adressverwaltung mit MySql und Java?



## Ka-si (30. Mrz 2014)

Hallo,

vorweg, ich bin neu hier und entschuldige mich wenn ich mein Thema an der falschen Stelle plaziere.

Ich habe mir so ein kleines.. vielleicht auch großes Projekt vorgenommen. Ziel ist es nach und nach für unsere kleine Firma eine Adressverwaltung mit unseren Kunden aufzubauen (max. 4000 Kunden). Diese soll stückweise erweitert werden, so das auch das Schreiben von Rechnungen usw. möglich ist. Idealerweise befinden sich die Daten auf einem Server in unserem Netzwerk auf den von verschiedenen Rechnern zugegriffen werden kann. Wir verwenden hier ausschließlich Ubuntu. Als Datenbankmanagementsystem möchte ich MySQl verwenden. Unsicher bin ich mir darüber welche Programmiersprache ich verwenden soll. Welche Sprachen kommen dafür in Frage? Java, Php oder was ganz anderes? Das ganze soll nicht verkauft oder dritten zur Verfügung gestellt werden. An die grafische Oberfläche werden keine größeren Anforderungen gestellt. Je schlichter desto besser.
Welche Sprache ist für so ein Projekt Eurer Meinung nach die geeignetste? Wie seht ihr das?

Über Eure Meinungen, Gedanken und Anregungen würde ich mich sehr freuen. Bin schon seit einer Weile am Suchen und lesen und finde so viele verschiedene Meinungen. Da ich bisher schon ein bisschen mit PHP gemacht habe und daher mit PHP liebäugel würde ich mich über die Meinung von Java-Experten freuen.

Grundsätzlich bin ich gerne bereit mich auf eine neue Sprache einzulassen wenn sich dadurch konkrete Vorteile ergeben. Letztendlich bleibt die Sorge am Ende auf das falsche Pferd gesetzt zu haben 

Viele Grüße
Karsten

P.S. falls ich Fachbegriffe nicht richtig verwendet oder andere Zusammenhänge falsch beschrieben habe sagt es mir bitte.


----------



## redJava99 (30. Mrz 2014)

Im Java-Forum liegt es nahe, dass man zu Java raten wird ;-)

Meine Einfälle zu deinem Vorhaben:
PHP eignet sich für "quick & dirty" immer hervorragend. Auf der Strecke bleibt über kurz oder lang die Wartbarkeit. Das Erscheinungsbild des Frontends verschönert sich vielleicht logarithmisch im Verhältnis zur aufgewendeten Zeit. Da dir Design nicht so wichtig ist, ist das in deinem Fall vernachlässigbar. Ich selbst finde ein optisch ansprechendes System aber _immer_ angenehmer zu benutzen, als ein paar unformatierte Formularfelder. Ganz abgesehen den von möglichen Eingabehilfen (Tabellen sortieren, Autovervollständigung, Exportfunktionen, ...) die sich dann nur mühsam implementieren lassen (JavaScript? - keine Ahnung, nicht mein Fachgebiet...).

Meine Tendenz ist - wen wundert's - Java. 
JavaEE auf einem ApplicationServer - zusammen mit JSF ergibt das ein sauberes Backend und ein ansehnliches Frontend. Und wer weiß, was in einiger Zeit sonst noch so benötigt wird. So eine Webapplikation ist schnell um ein neues Feature erweitert.

Zur Datenbank: Hier kann man nicht viel falsch machen. Und MySQL ist immer eine gute Wahl ;-)


----------



## Fab1 (30. Mrz 2014)

Ich bin der Meinung, dass die Sprache relativ egal ist. Realisierbar ist dein Vorhaben mit nahezu allem. Ich würde lieber eine bekannte Sprache nehmen, da man sich so einfach viel Arbeit spart.
Aber trotzdem die Frage, warum alles selber machen? Ich denke der Aufwand das ganze relativ gescheit selber zu machen ist wesentlich höher als für etwas Geld etwas bestehendes zu kaufen.

Ansonsten viel erfolg.


----------



## Lit-Web (31. Mrz 2014)

Hallo,

du kannst das ganze auch als Client - Server Anwendung umsetzen. Als Serveranwendung ein Maven - Spring Projekt aufziehen. Und für das Frontend bist du dann vollkommen frei, da können Smartphone und Tablet APPs damit reden, oder ne Browser Anwendung oder oder oder.

Als Datenbank MySql oder Postgresql.


----------



## Thallius (31. Mrz 2014)

Wenn Du die Daten eh auf einem Server unter mySQL verwalten willst, dann wird so oder so 90% der Arbeit sein den Webservice zu schreiben. Ob das jetzt PHP sein muss ist Dir überlassen. Geht auch mit anderen Scriptsprachen. Der Client wird dann fast nur Anzeige-Charakter haben und da ist dann auch total egal was du nimmst. Ich sehe da keinen großen Nachteil von HTML/CSS/JS gegenüber Java. Eigentlich eher den Vortiel, dass der Client Rechner dann keine eigene Software braucht sondern ganz einfach über den Browser funktioniert.

Gruß

Claus


----------



## redJava99 (31. Mrz 2014)

> Eigentlich eher den Vorteil, dass der Client Rechner dann keine eigene Software braucht sondern ganz einfach über den Browser funktioniert.



Klingt fast so, als bräuchte man für eine Java-Webapp irgendwelche Software.
Der Client braucht auch hier lediglich einen handelsüblichen Webbrowser... den Rest macht der Server.


----------



## Thallius (31. Mrz 2014)

redJava99 hat gesagt.:


> Klingt fast so, als bräuchte man für eine Java-Webapp irgendwelche Software.
> Der Client braucht auch hier lediglich einen handelsüblichen Webbrowser... den Rest macht der Server.



Naja ich gehe nicht davon aus, dass jeder Rechner automatisch Java installiert hat. 

Gruß

Claus


----------



## redJava99 (31. Mrz 2014)

Hatte ich nicht was von _nur_ einem Webbrowser geschrieben? :bahnhof:


----------



## Ka-si (2. Apr 2014)

Erst einmal besten Dank für eure Antworten und Mithilfe! Es freut mich Feedback zu bekommen.

Leider fehlt mir noch das Verständnis. Bei PHP habe ich den Quellcode und die Datenbanken auf dem Server und führe das ganze dann als Client über den Browser aus.
Wie ist das bei Java? Gehe ich da auch über den Browser oder kann ich mir meine eigene grafische Oberfläche verwirklichen. 

Könnt ihr mir gute Literatur empfehlen?

Gruß
Kasi


----------



## Lit-Web (6. Apr 2014)

Bei PHP wird nichts als Client auf dem Browser ausgeführt. Dein PHP wird auf dem Server verarbeitet und es wird HTML an den Browser zurück gesendet, welches dann gerendert wird.

Bei Java ist das nichts anderes. Aber es ist etwas was anderes JSP oder JSF laufen zu haben oder eben eine wirkliche verteilte Anwendung (Client-Server) umzusetzen.

Im richtigen Fall einer Client - Server Anwendung ist der Serveranwendung vollkommen wurscht was als Client läuft und Daten vom Server brauch. Da kann der Client ne APP sein (Android, IOS. WIN, BlackBerry) oder aber ne Browseranwendung (wichtig hier auf die SOM achten). ES kann aber auch ne Java SE Desktop Anwendung, ne C# Klickbuntibutton Anwednung oder, oder, oder sein.


----------



## JeromeC (7. Apr 2014)

Mein Tipp:
1. Oracle-DB+ Oracle SQL Developer ->  DBMS dass durch den Developer schnell zu guten Ergebnissen führt.

2. MSSQL Server (reicht die Express) und Visual Studio 2012/2014 mit dem Addon für MSSQL. Views klickst du dir ganz schnell zusammen und Queries basteln sich bequem.

3. Externe Lösung kaufen? Kosten/Nutzen-Faktor würde ich abwegen wenn du alleine proggst, selbst bei geringen Ansprüchen, musst du doch auf Datensicherheit, Stabilität, Rechtemanagment und das ACID-Prinzip achten.


----------



## Stefan Isele (6. Mai 2014)

Hallo, ich kenne das Problem und habe ein Framework entwickelt, mit dem man so eine Anwendung in wenigen Stunden zum Laufen kriegen kann.

Mit dem Open-Source Framework appdriver kann man Web-Anwendungen mit JPA, Spring REST, Maven, JQuery,Ajax, Bootstrap in wenigen Minuten aufsetzen und dann schrittweise erweitern.
Selbst wenn das für Ihre Zwecke nicht genau das Richtige ist, kommen Sie damit aber ganz schnell zu einer laufenden Anwendung und können dann 'am Lebenden Objekt' forschen.

Die Website des Projektes ist appdriver.com
Eine Live-Demo läuft unter demo.appdriver.com
Die REST-API finden Sie unter http://appdriver.prefabware.cloudbees.net/api/

Viel Erfolg !


----------

