# Mitarbeiterverwaltung und Auswertung



## Seeeleee (23. Jan 2010)

Hallo zusammen, 

ich möchte ein Programm (mit Java + Datenbank) schreiben, das Mitarbeiter eines Unternehmens verwalten kann. Sprich Umsatz, Urlaub, Anzahl der Neukunden etc. speichern kann.
Diese Daten sollen komprimiert werden, sodass man diese Daten  für das komplette Unternehmen (ggf. auch mehrere Standorte) sehen und auswerten kann. Die Auswertung soll durch Diagramme unterstützt werden.

Bei der Umsetzung mangelt es mir an folgendem Wissen:

-wie erstelle ich (mit NetBeans) ein Programm, dass sich zb über eine .exe Datei starten lässt und "selbstständig" läuft
-wie füre ich eine Datenbank meinem Programm hinzu ohne, dass der Anwender zb Oracle, MySQL, Java DB besitzt oder zuvor eine eigene Datenbank anlegen muss?
-wie baue ich Sicherheitsmechanismen ein, sodass niemand an meinen Code gelangt und das Programm illegal verfielfältigt werden kann?


Gibt es OpenSource-Software mit denen ich diese Eigenschaften schneller umsetzen kann oder andere vorgefertigte Programme?
Habt Ihr Tipps für die oben aufgeführten Probleme?


Gruß,
Seeeleee


----------



## Marco13 (23. Jan 2010)

Zur 3. Frage: Das erste wäre ein "Obfuscator" (z.B. "RetroGuard"). Der verändert die .class-Dateien so, dass man sie nicht mehr einfach so durch einen decompiler schicken kann. Darüber hinaus gibt es natürlich noch weitere Mechanismen, bis hin zur Verschlüsselung des ByteCodes und eigene Classloader mit Hardware-Dongles....


----------



## frapo (23. Jan 2010)

Ich würde mir zu Beginn erstmal Gedanken zu der Struktur der Daten machen, Stichtwort ERM. Welche Tabellen werden gebraucht, welche Felder werden benötigt, wie sehen die Beziehungen zwischen den Tabellen aus? Etc. 

Zu Frage 2: Du kannst eine embedded DB verwenden. Die läuft im Kontext deiner Anwendung, ohne das der Nutzer irgendein DB-Server sein eigen nennen muss. Anbieten könnten sich hier H2, Java DB und andere. 
Die Erstellung der Datenbank und Tabellenstrukturen, sowie das Füllen dieser Tabellen mit möglichen Anfangsdaten, müßte dann deine Anwendung übernehmen.   

Gruß
frapo


----------



## noobadix (23. Jan 2010)

Zu Frage eins fällt mir JSmooth ein, das macht ne exe. Wie es funktioniert und ob das so gut ist weiß ich nicht, aber dass es funktioniert kann ich dir versichern, allerdings braucht der Anwender immernoch die JRE installiert...klar, java, ne?
JSmooth kann für das automatische Downloaden der JRE sorgen.


----------



## thom (27. Jan 2010)

Zu 1: Du mußt doch die fertige .jar-Datei direkt per Doppelklick starten können (installiertes JRE vorausgesetzt).
Zu 2: HSQLDB und McKoi sind weitere Kandidaten
Zu 3: Sollen die einzelnen Datenbanken autark sein, oder sollen die Daten bei Gelegenheit in einer gemeinsamen Datenbank zusammengeführt werden?


----------

