verschiedene Daten abspeichern

fc90

Mitglied
Hallo zusammen,

ich hoffe mal ich bin hier im Anfängerbereich richtig. Ich arbeite eigentlich schon eine ganze Weile mit Java, habe jetzt aber trotzdem ein Problem wo ich nicht richtig weiter weis.

Ich arbeite zur Zeit an einem Projekt, welches dem Benutzer einige Einstellmöglichkeiten bieten soll.
Unter anderem sind das: Strings, Integer, Farben (Color), Listen aus Strings und evtl. auch noch Listen aus jeweils zwei Strings

Nun weiß ich allerdings nicht wie ich das am Besten abgespeichert bekomme. Am liebsten wären mir .properties -Dateien für jeweils verschiedene Einstellungen.

Ich wollte das ganze mit einer zentralen Klasse verwalten und die Einstellungen nur am Anfang laden und an bestimmten Stellen (bei Änderung durch Benutzer) wieder speichern.


Leider hab ich momentan absolut keine Idee wie ich an das ganze rangehe. Wenn ich das ganze nur einmal laden will, müsste ich die Einstellungs-Klasse ja immer an alle Klassen weitergeben die diese benötigen. Das kann doch irgendwie auch nicht der richtige Weg sein, oder?


Ich hoffe ich habe mich halbwegs klar ausgedrückt (hab da öfters so meine Probleme).

Schon im Vorraus Danke für jede Hilfe.
 

AmunRa

Gesperrter Benutzer
Eine Properties datei ist gar keine schlechte Idee. Für den Zugriff könntest du dir eine eigenen Klasse schreiben die z.B eine statische Methode hat getSetting() und auf diese kannst du dann ja ohne probleme zugreifen.
 

nrg

Top Contributor
allgemein kannste doch einfach einen properties-Datei im user.dir ablegen. wenn das größer sein soll, kannste das vllt mit ner embedded db machen.

Leider hab ich momentan absolut keine Idee wie ich an das ganze rangehe. Wenn ich das ganze nur einmal laden will, müsste ich die Einstellungs-Klasse ja immer an alle Klassen weitergeben die diese benötigen. Das kann doch irgendwie auch nicht der richtige Weg sein, oder?

entweder du machst eine statische Utility Klasse oder eine SingleTon. Ich würde eher letzteres empfehlen.
 

fc90

Mitglied
danke für eure schnellen Antworten:)

an eine statische Funktion hab ich grade absolut garnich gedacht:( obwohl das sehr einleuchtend ist.

von SingleTon hab ich noch nix gehört. Ich belese mich da mal.

EDIT: ok, SingleTon klingt auch einleuchtend. Ich versuche dann mal mein Glück. Vielen Dank euch beiden.
 
Zuletzt bearbeitet:

Herr Kaiser

Bekanntes Mitglied
Da ich selbst noch ein Java-Grünschnabel bin, wage ich nicht zu behaupten, dass meine Lösung eine gute ist. Ob es ratsam ist, können vielleicht die Gurus beurteilen, aber es funktioniert:
Ich habe eine Klasse definiert, so dass die jeweiligen Variablen einfach die Eigenschaften eines einzelnen Objektes darstellen. Zwecks Speicherung serialisiere ich einfach das Objekt per writeObjekt und deserealisiere zum Wiedereinlesen per readObjekt. Dann sind mit einer einzigen Programmzeile alle Werte den entsprechenden Variablen zugewiesen. Finde ich sehr praktisch. Aber wie gesagt, die große Ahnung habe ich nicht ...
 

fc90

Mitglied
das mit dem serialisieren scheint ja üblich zu sein, oder? gabs grad wieder erst einen neuen Thread hier;)

Ich bin jetzt erstmal dabei eine schöne Struktur zu schaffen in die ich dann die ganzen Daten irgendwie reinbekomme ohne das es unübersichtlich wird.
 

fc90

Mitglied
ist irgendwie komisch:D per mail hab ich das bekommen:
Habs nicht ausprobiert aber kannst du nicht einfach mehrfach .writeObject() aufrufen? Darfst halt den ObjectOutputStream nicht schließen...

Falls das doch nötig ist, kann man mit


FileOutputStream fos = new FileOutputStream(file, true);

eine Datei zum Anhängen öffnen, das was vorher drinsteht bleibt drin, das neue Objekt wird hintendran gehängt.

Gruß, Kruemel
Genau so hab ich das zur Zeit vor:) hab nur noch leichte Schwierigkeiten das alles so zu gestalten, dass es übersichtlich wird.

Sollte man alle Klassen in denen dann die Einstellungen verwaltet werden statisch machen?
Ich habe jetzt nur eine Hauptverwaltungsklasse statisch und hohle mir dann damit meine anderen (nicht-statischen) Einstellungsklassen.

Ich wills halt gleich einmal ordentlich machen:) Baue gerade mein komplettes Programm um und hatte das vorher alles in einer ini-Datei stehen.
 

AmunRa

Gesperrter Benutzer
FileOutputStream fos = new FileOutputStream(file, true);

eine Datei zum Anhängen öffnen, das was vorher drinsteht bleibt drin, das neue Objekt wird hintendran gehängt.

Wenn du dann aber in diese Datei ein zweites Object serialisierst, kannst du dennoch immer nur das erste Object wieder lesen. Alle hinten angehängten Objecte kannst du nicht mehr deserialiesieren.
 

fc90

Mitglied
ok. das ist leider schade.
Dann muss ich nochmal einiges ändern.

Wegen den statischen Klassen hab ich so das Gefühl das ich mich da unbedingt nochmal belesen sollte. Ich habe das noch nie wirklich vorher eingesetzt.


OT: Glückwunsch zu deinen 700 Beiträgen.
 
Zuletzt bearbeitet:

Kruemel

Mitglied
ist irgendwie komisch:D per mail hab ich das bekommen:

Genau so hab ich das zur Zeit vor:) hab nur noch leichte Schwierigkeiten das alles so zu gestalten, dass es übersichtlich wird.

Sollte man alle Klassen in denen dann die Einstellungen verwaltet werden statisch machen?
Ich habe jetzt nur eine Hauptverwaltungsklasse statisch und hohle mir dann damit meine anderen (nicht-statischen) Einstellungsklassen.

Ich wills halt gleich einmal ordentlich machen:) Baue gerade mein komplettes Programm um und hatte das vorher alles in einer ini-Datei stehen.

Das war eine komische Geschichte, ich wollte eigentlich in einem anderen Thread antworten, dann ist das aber hier gelandet ^^ Wenns passt isses trotzdem super, da man Beitraäge nicht löschen kann hab ich den Smily reingehaun oO

Gruß, Kruemel
 

fc90

Mitglied
hatte ja trotzdem reingepasst:)

ich markiere das hier erst mal als erledigt. Wenn ich doch noch auf Probleme stoße meld ich mich;)
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
B Zwei verschiedene Daten vergleich Java Basics - Anfänger-Themen 2
G Daten in verschiedene Listen schreiben Java Basics - Anfänger-Themen 5
I 2 verschiedene Klassen mit gleichen Property vergleichen Java Basics - Anfänger-Themen 13
N Verschiedene Konstruktoren mit gleichen Datentypen Java Basics - Anfänger-Themen 8
Buroto Threads Verschiedene .txt Dateien Auf Listen und Verbinden Java Basics - Anfänger-Themen 3
S OOP Java Eingabe in verschiedene Datenbank Tabellen eintragen Java Basics - Anfänger-Themen 7
I SWT Plattformunabhängig laden - verschiedene SWT .jar laden Java Basics - Anfänger-Themen 0
T Java FXML selbes Fenster verschiedene Stellen im Programm Java Basics - Anfänger-Themen 5
D Zwei verschiedene Intellij Projekte, wie benutze ich wechselseitig objekte Java Basics - Anfänger-Themen 8
K verschiedene Eingaben sortieren Java Basics - Anfänger-Themen 6
W Verschiedene Methoden in einer Klasse in der Main aufrufen? Java Basics - Anfänger-Themen 8
W n verschiedene Arrays zufällig ausgeben - mit der Random-Klasse? Java Basics - Anfänger-Themen 8
S Objekte von zwei klassen in zwei verschiedene Textdateien schreiben Java Basics - Anfänger-Themen 5
T for-each-Schleife, verschiedene Datentypen Java Basics - Anfänger-Themen 1
HoT verschiedene ArrayLists mit ähnlichem Namen in for-Schleife aufrufen Java Basics - Anfänger-Themen 3
FelixN Array mit verschiedene Datentypen als Rückgabewert? (Long und Double) Java Basics - Anfänger-Themen 3
T Vererbung Verschiedene Attribute für vererbte Klassen Java Basics - Anfänger-Themen 4
M JavaFX- Verschiedene Stages Java Basics - Anfänger-Themen 1
B Get / Set - Methode für verschiedene Entities? (generisch) Java Basics - Anfänger-Themen 21
L Wie Input auf verschiedene Kriterien hin überprüfen? Java Basics - Anfänger-Themen 3
T Vererbung Verschiedene Fahrzeugtypen mit unterschiedlicher Ausgabe Java Basics - Anfänger-Themen 17
C Verschiedene Objekte in einer Liste speichern Java Basics - Anfänger-Themen 6
F Komplexe Zahlen auf verschiedene Weise addieren Java Basics - Anfänger-Themen 18
N verschiedene Reihenfolgen ausgeben Java Basics - Anfänger-Themen 15
M Dijkstra Algorithmus in Graphen auf mehrere verschiedene Knoten anwenden lassen Java Basics - Anfänger-Themen 11
Java The Hutt SetWerte über verschiedene Klassen Java Basics - Anfänger-Themen 16
M Verschiedene Eingabe = Verschiedene Ausgaben Java Basics - Anfänger-Themen 5
M Erste Schritte Mit Variable verschiedene Texte in Textfeld einfügen Java Basics - Anfänger-Themen 27
T Datentypen Kann Java 2 verschiedene Datentypen vergleichen? Java Basics - Anfänger-Themen 2
B String auseinander nehmen in verschiedene Teile Java Basics - Anfänger-Themen 9
X Variablen Problem bei Aufteilung in verschiedene Class-Files Java Basics - Anfänger-Themen 4
E JAvaFX: Verschiedene Panels nach Klick auf Node des TreeView anzeigen Java Basics - Anfänger-Themen 0
T Java verschiedene Anweisungen Java Basics - Anfänger-Themen 23
W Verschiedene Bibliotheken in einer Anwendung? Java Basics - Anfänger-Themen 2
tuc Erste Schritte verschiedene objekte in einem feld speichern Java Basics - Anfänger-Themen 4
L Verschiedene Bilder per Knopfdruck anzeigen lassen Java Basics - Anfänger-Themen 17
J ArrayList über verschiedene Klassen verwenden Java Basics - Anfänger-Themen 7
P Erste Schritte durch MenuBar verschiedene Fenster öffnen Java Basics - Anfänger-Themen 2
G Datentypen verschiedene Objekte in eine ArrayList, Generics Java Basics - Anfänger-Themen 2
GoldenShadow Input/Output Verschiedene Versionen von Input/Output Java Basics - Anfänger-Themen 3
I Drucken in Java / verschiedene Papierformate Java Basics - Anfänger-Themen 0
P Verschiedene Java Versionen nutzen Java Basics - Anfänger-Themen 6
Z Was habe ich davon mit einem Datentyp verschiedene Instanzen zu haben? Java Basics - Anfänger-Themen 6
S write(), weshalb verschiedene Ausgaben? Java Basics - Anfänger-Themen 4
E Erste Schritte Verschiedene Anfängerfragen (Rekursion, Terminierung, Schleife, etc.) Java Basics - Anfänger-Themen 5
I String trennen und verschiedene Wörter holen Java Basics - Anfänger-Themen 6
B Verschiedene Objekte in 2 dimensionalem Array speichern Java Basics - Anfänger-Themen 10
S Datei ausführen, verschiedene Ordner Java Basics - Anfänger-Themen 2
O Verschiedene Farben in einer GUI Java Basics - Anfänger-Themen 15
R Klassen Mehrere/Verschiedene Objekte umcasten Java Basics - Anfänger-Themen 8
N Vererbung Verschiedene Subclasses nach cast zur Superclass unterscheiden Java Basics - Anfänger-Themen 9
D Verschiedene Fragen zu meinem Projekt Java Basics - Anfänger-Themen 6
S textPane verschiedene formatierungen Java Basics - Anfänger-Themen 8
K Verschiedene JDK´s paralell nutzen? Java Basics - Anfänger-Themen 3
M Verschiedene Möglichkeiten mit 'equals' abdecken? Java Basics - Anfänger-Themen 9
H 2 verschiedene Objekte in Liste mit Compareable sortieren Java Basics - Anfänger-Themen 7
G Erste Schritte Über verschiedene Datentypen iterieren. Gibt es sowas? Java Basics - Anfänger-Themen 19
N Verschiedene Klassen als Parameter elegant übergeben? Java Basics - Anfänger-Themen 4
X Listen und verschiedene Methoden Java Basics - Anfänger-Themen 6
K Input/Output Verschiedene Ordner für Java u.v.m. Projekte Java Basics - Anfänger-Themen 3
G Umwandlung in verschiedene Zahlensysteme Java Basics - Anfänger-Themen 4
R Verschiedene Jar Versionen nutzen Java Basics - Anfänger-Themen 14
D Umgebungsvariable verschiedene Werte von JAVA_HOME? Java Basics - Anfänger-Themen 4
J verschiedene Anweisungen bei verschiedenen Zuständen Java Basics - Anfänger-Themen 9
F Info zwischen verschiedene Klassen austauschen Java Basics - Anfänger-Themen 4
R Input/Output verschiedene Datentypen als Bytes in Datei speichern Java Basics - Anfänger-Themen 15
Blindxantos Klassen in verschiedene Packages unterteilen Java Basics - Anfänger-Themen 2
N Verschiedene JFrames in einem JFrame anzeigen Java Basics - Anfänger-Themen 7
A Datentypen Verschiedene Threads synchronisieren Java Basics - Anfänger-Themen 3
D Mehrere verschiedene Farben pro fillRect Java Basics - Anfänger-Themen 3
M Verschiedene Werte in methoden Java Basics - Anfänger-Themen 3
K Verschiedene (Thread) Objekt-Positionen (int) in einem Array zusammenfassen Java Basics - Anfänger-Themen 3
J Verschiedene Rückgabetypen(int int char) Java Basics - Anfänger-Themen 10
S Datentypen Die verschiedene Java Datentypen [Anfänger] Java Basics - Anfänger-Themen 8
J OOP verschiedene Objekttypen ablegen Java Basics - Anfänger-Themen 4
B Welcher Feld Typ für verschiedene Datentypen? Java Basics - Anfänger-Themen 4
capgeti Verschiedene Rückgabetypen ohne Typecast möglich? Java Basics - Anfänger-Themen 7
S Verschiedene Arrays über Index aufrufen Java Basics - Anfänger-Themen 5
Developer_X in JEditorPane verschiedene Farben, verwenden Java Basics - Anfänger-Themen 7
C verschiedene Label auf Knopfdruck abrufen Java Basics - Anfänger-Themen 4
L Verschiedene Fonts für verschiedene Dialogelemente Java Basics - Anfänger-Themen 2
G Verschiedene Packages Java Basics - Anfänger-Themen 3
C Zustandsanzeige durch verschiedene Klassen Java Basics - Anfänger-Themen 4
S verschiedene Versionen Java Basics - Anfänger-Themen 2
G Verschiedene Exceptions zu gleichem Block Java Basics - Anfänger-Themen 6
T verschiedene Anfängerfragen Java Basics - Anfänger-Themen 20
J Verschiedene Ausgaben bei gleichen Ausdrücken (Typecasting?) Java Basics - Anfänger-Themen 5
N Verschiedene Input/Output Klassen Java Basics - Anfänger-Themen 3
G verschiedene datentypen in arraylist Java Basics - Anfänger-Themen 14
L verschiedene JPanel-Instanzen erstellen Java Basics - Anfänger-Themen 8
L 2 verschiedene Typen in einer Tabelle ablegen Java Basics - Anfänger-Themen 18
N Problem mit Tastatureingaben für verschiedene Datentypen Java Basics - Anfänger-Themen 3
L verschiedene formuare in einem fenster öffnen Java Basics - Anfänger-Themen 8
I Array für verschiedene Datentypen? Java Basics - Anfänger-Themen 5
R verschiedene dateitypen öffnen Java Basics - Anfänger-Themen 5
L verschiedene zeichen einlesen Java Basics - Anfänger-Themen 5
C 2 verschiedene Tables = 2 verschiedene Renderer ? Java Basics - Anfänger-Themen 5
S mit Buttons verschiedene Bilder laden Java Basics - Anfänger-Themen 4
S klassen in verschiedene Dateien Java Basics - Anfänger-Themen 5
3 Verschiedene Fragen (bin neu hier) Java Basics - Anfänger-Themen 5

Ähnliche Java Themen

Neue Themen


Oben