Databinding von Object zu properties-Datei

Status
Nicht offen für weitere Antworten.
M

Mercedes

Gast
Buenos,

Ich kenne ein Databindung wo man Objecte in XML-Datein mit dem Apachy Framework CASTOR schreiben kann.

Genau dasgleiche suche ich jetzt für Properties-Dateien.
Also sprich ein Object mit seinen Members wird einfach in eine Propertiesdatei geschrieben und kann auch wieder einfach geladen werden.

Es soll eine Propertiesdatei sein, und keine XML Datei, weil das die Vorgabe ist, weil alte Systeme im Spiel sind, die mit den XML-Datein nichts anfangen können.

Hasta luego

Mercedes
 
M

Mercedes

Gast
Ich hab ein Object, daß viele Membervariablen hat

.x
.y
.z

usw..

Diese möchte ich nicht immer einzeln per properties.store("...")
schreiben, sondern auf EINMAL. Wenn das Objekt größer wird, dann muß ich mich nicht drum kümmern, daß neue Membervariablen mitgespeichert werden.

HashMap wäre eine Idee, doch wie speichere ich eine HashMap automatisch in eine Datei ?
 

@x.l

Bekanntes Mitglied
Meinst du mit "automatisch", dass bei jeder Änderung die Map gesichert werden soll?

#edit: Speichern kannst du mit Map ja ganz einfach mit:
Code:
HashMap map = new HashMap();
ObjectOutputStream oos = new ObjectOutputStream(new FileOutputStream(fileName));
oos.writeObject(map);
 
M

Mercedes

Gast
Nein, daß speichern kann ich selber anstossen.

Bloss ist mir nicht klar, wie dann die Map gespeichert ist.
Ist das als binary ?

Wie sieht ein gespeichertes Object aus.

Ich will nämlich in der gespeicherten Datei von Hand editieren können
 

@x.l

Bekanntes Mitglied
Mercedes hat gesagt.:
Wie sieht ein gespeichertes Object aus.

Ich will nämlich in der gespeicherten Datei von Hand editieren können

Mach einfach mal einen Probelauf und schau es dir an.... aber von Hand kannst du nichts ändern! Denn die externe Änderung eines serialisierten Objekts ist nicht zulässig! (für die Begründung müsste ich nochmal nachlesen :### )
 
M

Mercedes

Gast
Ok, aber dann brauch ich doch keine HashMap, oder ?

Kann ich nicht mein Object ohne Hashmap speichern ?

es ist doch das Objekt was ich gerade verwende, praktisch das This-object

es hat halt Members, wie

.groesse
.hoehe
.breite

Ich muß das speichern, weil ich es beim nächsten Programmstart wieder brauche.

Oder muß ich jetzt die Members halt doch "von Hand" in eine HashMap legen und dann die HashMap speichern.

Kann ich nicht gleich mein This-Object speichern ?
 

@x.l

Bekanntes Mitglied
Du kannst dein Objekt natürlich auch direkt sichern. Hatte gedacht es handelt sich um mehrere Objekte... prinzipiell kannst du alle Objekte speichern welche Serializable implementieren.
 
M

Mercedes

Gast
Aha, jetzt hab ich glaube ich etwas elementares verstanden.
! Que bueno !

Hast du mir noch ein Beispiel, wo die Membervariablen des This-Object eines Hauptprogramms gespeichert wird, sodaß man es beim nächsten Start wieder die Membervariablen laden kann ?
 

Ice-Tea

Bekanntes Mitglied
Ich bin mir nicht sicher ob ich das richtig verstanden habe.


Meinst du soetwas:


Code:
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.util.HashMap;
import java.util.logging.Level;
import java.util.logging.Logger;

/**
 *
 * @author Ice-Tea
 */
public class NewMain {

    private static String test = "test";
    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {

        Bsp bsp = new Bsp();
        HashMap neu = bsp.getMap();

        // zum "nur auslesen" einfach weglassen:
        neu.put("Test", test);



        System.out.println(test = (String) bsp.getMap().get("Test"));

    }
}

class Bsp {

    private HashMap map = null;

    public void setMap(HashMap map) {
        ObjectOutputStream oos = null;
        try {
            oos = new ObjectOutputStream(new FileOutputStream(".....pfad/test.test"));
            oos.writeObject(this.map=map);
        } catch (IOException ex) {
            Logger.getLogger(NewMain.class.getName()).log(Level.SEVERE, null, ex);
        } finally {
            try {
                oos.close();
            } catch (IOException ex) {
                Logger.getLogger(NewMain.class.getName()).log(Level.SEVERE, null, ex);
            }
        }
    }

    public HashMap getMap() {
        try {
            ObjectInputStream ois = null;
            ois = new ObjectInputStream(new FileInputStream(".....pfad/test.test"));
            map = (HashMap) ois.readObject();
            if(map==null){
                return map = new HashMap();
            }
        } catch (ClassNotFoundException ex) {
            Logger.getLogger(NewMain.class.getName()).log(Level.SEVERE, null, ex);
        } catch (IOException ex) {
            Logger.getLogger(NewMain.class.getName()).log(Level.SEVERE, null, ex);
        }
        return map;
    }
}
 

Murray

Top Contributor
Du könnest per Reflection alle Member der Klasse suchen und die Werte holen, dann jeweils den Membernamen und den Wert in ein Property-Objekt setzen. Dieses Property-Objekt kannst Du dann ganz normal speichern. Zum Einlesen müsstest Du ein Property-Objekt erzeugen und aus der Datei füllen, dann ein neues Objekt Deiner Klasse erzuegen, über die Keys des Property-Objekts iterieren, zu jedem Key wieder das Member der Klasse besorgen und den Wert setzen (das funktioniert nur unter der Prämisse, dass in der Klasse nur String-Member existieren).
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
H Object cast exception Allgemeine Java-Themen 7
P JDK nicht installiert in Net Object Fusion Allgemeine Java-Themen 7
Erwin82a Object cannot be converted to Custom Class in Lampda Expression Allgemeine Java-Themen 2
Zeppi Cast Object in Generics Allgemeine Java-Themen 4
MoxxiManagarm Mapping into existing object Allgemeine Java-Themen 15
coolian Swing erstellt fillreckt immmer ein neues object Allgemeine Java-Themen 13
N Wo ist Object.class ? Allgemeine Java-Themen 0
R Erste Schritte Object reference funktioniert nicht. Wie mach ichs richtig? Allgemeine Java-Themen 3
RalleYTN Datentypen Herausfinden ob Object ein Array ist ohne den Typen des Arrays zu kennen? Allgemeine Java-Themen 12
N Gibt es etwas allgemeineres as Object? Allgemeine Java-Themen 16
Bananabert Swing jtree : image als user object Allgemeine Java-Themen 2
N ArrayList in eigenem Object nicht richtig serialisierbar Allgemeine Java-Themen 14
B [Android] EditText-Object ist null - Nimmt nicht den Wert des enthaltenen Textfeldes ein Allgemeine Java-Themen 2
Z Vergleich zwischen int und Object Allgemeine Java-Themen 1
D Object nach Vererbung mit Class Object überprüfen Allgemeine Java-Themen 4
T InvalidClassException - Read null attempting to read class descriptor for object Allgemeine Java-Themen 8
J Ist eine Instanz von einem bestimmten Object Typ? Allgemeine Java-Themen 6
L Sortieren von "Map<String, Object>" Allgemeine Java-Themen 2
M Cast double[]-->Object[] oder Vector<double[]> Allgemeine Java-Themen 3
G REST- Object darstellung Allgemeine Java-Themen 6
C Object.equals() liefert falschen Wert? Allgemeine Java-Themen 14
darekkay Generics: Wildcard und Object Allgemeine Java-Themen 5
O Socket Object wird scheinbar falsch empfangen Allgemeine Java-Themen 6
N Klasse/Object Eigenaufruf Allgemeine Java-Themen 5
G JNI Shared Object Allgemeine Java-Themen 10
B Variable class in java.lang.Object Allgemeine Java-Themen 11
S Klassen Zuorgnung Object-char Allgemeine Java-Themen 2
N java.lang.IllegalMonitorStateException: object not locked by thread before notify() Allgemeine Java-Themen 2
S Type mismatch: cannot convert from Object to float Allgemeine Java-Themen 3
A Input/Output Serialisierung und Object.hashCode() Allgemeine Java-Themen 3
M Jaxb und JPA: A cycle is detected in the object graph Allgemeine Java-Themen 5
H double dispatch und equals(Object) Allgemeine Java-Themen 6
J Datentypen Problem mit Date-Object Allgemeine Java-Themen 2
B Variablen Alle RenderingHints.Keys (KEY_*) in Array + alle RenderingHints.Keys (VALUE_*) in Object[] Allgemeine Java-Themen 8
J Verschiedene Klassen als "Object" in ArrayList und dann in for-Schleife erzeugen!? Allgemeine Java-Themen 2
L Object Instanz anhand eines Strings Allgemeine Java-Themen 10
A Datei als Object einlesen und das Object als Singleton instance setzen. Allgemeine Java-Themen 13
DEvent embedded Object Database in Text Format Allgemeine Java-Themen 5
J Casting Problem Object, Double und String Allgemeine Java-Themen 3
M Object-Instanz in Date übersetzen Allgemeine Java-Themen 6
P Tree Object structure Allgemeine Java-Themen 19
G Object mit clone kopieren Allgemeine Java-Themen 21
J merkwürdig: Object Allgemeine Java-Themen 6
woezelmann Object nach Deserialisierung nicht mehr gleich Allgemeine Java-Themen 13
Iron Monkey Object in Datei effizienter lesen / schreiben Allgemeine Java-Themen 13
L Object = null? Allgemeine Java-Themen 16
dayaftereh Serializable und Object In/Out Stream Allgemeine Java-Themen 2
T Object auf Double, Int, String testen Allgemeine Java-Themen 5
N serialize deserialize java object über string Allgemeine Java-Themen 8
N getName() of reflection Object Allgemeine Java-Themen 4
B Probelm mit File Object Allgemeine Java-Themen 6
G NoClassDefFoundError: java/lang/Object Allgemeine Java-Themen 4
S Liste Object Löschen Allgemeine Java-Themen 7
P not enough space for object heap - Trotz mehr RAM? Allgemeine Java-Themen 6
MQue List<String> aus List<Object> generieren Allgemeine Java-Themen 2
M ArrayList<Object[]> und toArray() Allgemeine Java-Themen 5
Daniel_L LinkedList vom Typ Object-Array? Allgemeine Java-Themen 4
B Warum return type Object ? Allgemeine Java-Themen 4
D Generisches Object erstellen Allgemeine Java-Themen 2
P Wieso HashMap-Zugriff mit Object, statt mit MyObject? Allgemeine Java-Themen 12
A NullPointer bei konvertierung von byteArr --> Object Allgemeine Java-Themen 3
foobar Object to byte[] ohne Serializable Allgemeine Java-Themen 6
reibi Object clonen spezial Allgemeine Java-Themen 8
C casten vom Typ Object nach Double[][] Allgemeine Java-Themen 2
X cannot convert from Object[] to Integer[] Allgemeine Java-Themen 2
G JSON Object auslesen Allgemeine Java-Themen 1
T cast Object to Double[] Allgemeine Java-Themen 2
G Object. Wrapper Allgemeine Java-Themen 12
V Object durchsuchen Allgemeine Java-Themen 4
U eigene Datenstruktur ArrayList<String> nach Object [][ Allgemeine Java-Themen 2
T "Object o = new Object()" vs. "new Object()&q Allgemeine Java-Themen 8
T Object -> byte[] Allgemeine Java-Themen 5
M Implementation von Zugriffen auf Object[index] in der JVM Allgemeine Java-Themen 9
T Klasse => Primitiv ? Object instanceof Klasse Allgemeine Java-Themen 2
B mit methode ein object zurückgeben. Allgemeine Java-Themen 5
R Object Dynamisch erzeugen (Reflection API) Allgemeine Java-Themen 22
T HashMap (String, Object(String , int)) nach int sortieren Allgemeine Java-Themen 7
P Typ Object in socket umwandeln Allgemeine Java-Themen 4
G Object cast via Reflection Allgemeine Java-Themen 8
Zed JList Object einfügen und Text anzeigen Allgemeine Java-Themen 3
MQue Object in Integer umwandeln Allgemeine Java-Themen 3
G Error: Hashtable Type safety: The method put(Object, Object) Allgemeine Java-Themen 6
T double to object Allgemeine Java-Themen 3
S File Object zu Directory machen ? Allgemeine Java-Themen 9
V Brauche dringend Hilfe. Object-handling Allgemeine Java-Themen 4
N Warning "The Cast from Object to" Allgemeine Java-Themen 9
K Threads und ein übergeordnetes Object Allgemeine Java-Themen 7
F Zugriff mittels getObject() oder this.object ? Allgemeine Java-Themen 8
W Object -> isPrimitiv? Allgemeine Java-Themen 7
D Cast schlägt fehl : Object[] zu Button[] Allgemeine Java-Themen 2
S Object nach Integer umwandeln Allgemeine Java-Themen 13
R object zu array casten. Allgemeine Java-Themen 2
N Map Object Allgemeine Java-Themen 13
G Eine C/C++ Referenz in einem Java Object speichern Allgemeine Java-Themen 5
N Ermitteln welchen Typ ein "Object"-Objekt enthält Allgemeine Java-Themen 11
K Cast ohne neues Object zu erzeugen Allgemeine Java-Themen 12
D Object in int casten Allgemeine Java-Themen 7
N Object-Array mit Comparator absteigend sortieren? Allgemeine Java-Themen 10
D Object to Long casting Allgemeine Java-Themen 9
G Object mit static Feldern speichern Allgemeine Java-Themen 9

Ähnliche Java Themen

Neue Themen


Oben