JSON mit einem JPanel

Jeykay

Mitglied
Hallo zusammen.

Gibt es eine Möglichkeit die Klasse Hund per JSON serialisieren zu lassen, auch mit dem JPanel?

Java:
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;

import javax.swing.*;
import java.io.Serializable;

public class Main {
    public static void main(String[] args) throws JsonProcessingException {

        Hund h1 = new Hund("Dackel", "schwarz", false);
        testJSON(h1);
    }
    public static void testJSON(Hund _h1) throws JsonProcessingException {

        ObjectMapper mapper = new ObjectMapper();
        System.out.println(mapper.writeValueAsString(_h1));
    }
}
class Hund extends JPanel implements Serializable {

    String rasse;
    String farbe;
    Boolean bissig;

    public String getRasse() {
        return rasse;
    }

    public void setRasse(String rasse) {
        this.rasse = rasse;
    }

    public String getFarbe() {
        return farbe;
    }

    public void setFarbe(String farbe) {
        this.farbe = farbe;
    }

    public Boolean getBissig() {
        return bissig;
    }

    public void setBissig(Boolean bissig) {
        this.bissig = bissig;
    }

    public Hund(){}

    public Hund(String rasse, String farbe, Boolean bissig) {
        this.rasse = rasse;
        this.farbe = farbe;
        this.bissig = bissig;
    }
}
 

KonradN

Super-Moderator
Mitarbeiter
Trenne Daten von der UI! Es geht um eine Objektorientierte Entwicklung. Was ist bei Dir ein Hund, wenn ein Hund ein JPanel ist (bzw. Hund verhält sich wie ein JPanel - das ist das bessere Wording!)

Schau Die dazu mal Pattern wie MVC oder MVVM an. Hund wäre Model, Die Controls und das JPanel wären View….
 

Jeykay

Mitglied
Trenne Daten von der UI! Es geht um eine Objektorientierte Entwicklung. Was ist bei Dir ein Hund, wenn ein Hund ein JPanel ist (bzw. Hund verhält sich wie ein JPanel - das ist das bessere Wording!)

Schau Die dazu mal Pattern wie MVC oder MVVM an. Hund wäre Model, Die Controls und das JPanel wären View….
Wieso habe ich mit dieser Antwort gerechnet :)

Ich habe einfach gehofft, dass es eine einfache Möglichkeit gibt, eines meiner ersten Projekt einfach weiter zu entwickeln. In diesem nutze ich Panels die Daten anzeigen/halten und es wäre so schön einfach gewesen. Dann werde ich mich mal daran machen und das auseinander dividieren.

Danke
 

KonradN

Super-Moderator
Mitarbeiter
Also wenn Du große Refactorings vermeiden willst, dann kannst Du das relativ einfach machen:

Als erstes aber eine kleine Abklärung: Du hast in Hund auch UI Dinge drin und die Klasse ich nicht nur, was Du gezeigt hast? Bei der gezeigten Klasse Hund könntest Du einfach das "extends JPanel" heraus nehmen vermute ich und schon hast Du die reine Model Klasse.

a) Die bisherige Klasse Hund benennst Du um in HundPanel.
b) Du erstellst eine neue Klasse Hund. Diese enthält nur das, was Du in #1 gezeigt hast, also die Daten eines Hundes, die Konstruktoren und die Getter/Setter
c) aus HundPanel löscht du alles von Hund raus. Statt dessen bekommt die Klasse einfach eine Instanzvariable vom Typ Hund.

Damit hast Du die Daten von der UI getrennt. Noch nicht nach einem der genannten Pattern. Aber das ist ok. Hund kannst Du dann jetzt als JSON schreiben und lesen.

Es kann also durchaus einfach sein. Aber mittelfristig sollte man es noch besser aufteilen und dann landet man bei Swing vermutlich bei MVC und bei JavaFX bei MVVM (mit mvvmFX Library - das wäre da mein Tipp. Aber da Du JPanel nutzt, kannst Du das einfach ignorieren).
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
R Value von einem JSON-Objekt ausgeben Java Basics - Anfänger-Themen 4
I JSON in Objekt umwandeln Java Basics - Anfänger-Themen 3
J Objekte in JSON speichern?? Java Basics - Anfänger-Themen 1
V JSON-Objs aus JSON-Obj filtern und löschen (Manipulation ohne Kenntnis der vollst. Struktur) Java Basics - Anfänger-Themen 12
I JSON / XML Struktur mit Vererbung / Interfaces Java Basics - Anfänger-Themen 0
I API - zurückgegebener JSON String lesen und in Entity konvertieren Java Basics - Anfänger-Themen 2
I JSON - cannot deserialize from Object value Java Basics - Anfänger-Themen 16
S JSON einlesen und benutzen Java Basics - Anfänger-Themen 5
HolyFUT JSON String in Java Object schreiben - Anführungszeichen rauskriegen? Java Basics - Anfänger-Themen 17
BATMAN_2008 Jackson adding additional fields to JSON throws java.util.concurrent.CompletionException: Java Basics - Anfänger-Themen 2
I JSON und Interface Java Basics - Anfänger-Themen 3
J Wert in einer json Datei ändern und speichern Java Basics - Anfänger-Themen 3
J Json Datei auslesen Java Basics - Anfänger-Themen 4
J JSON-HashMap Java Basics - Anfänger-Themen 3
P JSON-Array auf Excel-Spalten verteilen? Java Basics - Anfänger-Themen 5
P Variablen HttpResponse.getBody() wird automatisch org.json Object und kann nicht zu json.simple Object gecastet werden? Java Basics - Anfänger-Themen 7
P Ressourcen für JSON & API Informationen? Java Basics - Anfänger-Themen 1
D JSON in JSOUP ELEMENTS Java Basics - Anfänger-Themen 1
M Wie analysiert JSON eine toString-Ausgabe ? Java Basics - Anfänger-Themen 1
F POST-Request mit json - Abfrage mit Java Java Basics - Anfänger-Themen 2
S JSON Datei schreiben und lesen Java Basics - Anfänger-Themen 3
F Kann JSON nicht deserialisieren Java Basics - Anfänger-Themen 0
R JSON Array Java Basics - Anfänger-Themen 4
E Erste Schritte Wie führe ich org.json.jar aus? Java Basics - Anfänger-Themen 6
M JSON Format Java Basics - Anfänger-Themen 5
I JSON Datei in Array umwandeln Java Basics - Anfänger-Themen 1
A JSON Lesen und Schreiben. Java Basics - Anfänger-Themen 3
L Jackson JSON parsen Java Basics - Anfänger-Themen 7
A JSON versenden Java Basics - Anfänger-Themen 2
N JSON - komme nicht weiter Java Basics - Anfänger-Themen 2
Y Fehler in Json Datei Java Basics - Anfänger-Themen 4
F JSON null macht mir ein Problem Java Basics - Anfänger-Themen 3
N Suchfeld, JSON Java Basics - Anfänger-Themen 2
F JSON in dokumentierten Format als PDF Java Basics - Anfänger-Themen 3
P JSON-Konfigurationsdatei verwenden: Probleme mit Pfad Java Basics - Anfänger-Themen 1
J JSON Java Basics - Anfänger-Themen 2
F JSON von XBMC Java Basics - Anfänger-Themen 1
Traxter JSON in Java Java Basics - Anfänger-Themen 15
J String aus Json File parsen Java Basics - Anfänger-Themen 6
B Best Practice JSON Datei zerlegen Java Basics - Anfänger-Themen 1
Joew0815 Interface JSON Objekte aus Java Objekten erzeugen Java Basics - Anfänger-Themen 9
C XML und/oder JSON Java Basics - Anfänger-Themen 3
J Funktion um JSON per Post senden/emfangen Java Basics - Anfänger-Themen 3
L Input/Output JSON Objekt abrufen und ausgeben Java Basics - Anfänger-Themen 9
D JSON Java Basics - Anfänger-Themen 4
R JSON - Ausgabe als HTML mit gson Java Basics - Anfänger-Themen 6
F JSON to JAVA (und vice versa) Java Basics - Anfänger-Themen 2
M JSON Datensätze aus Website in Tabelle Java Basics - Anfänger-Themen 17
C Java, Javascript, Dojox und JSON Java Basics - Anfänger-Themen 4
S JSON String in Object umwandeln Java Basics - Anfänger-Themen 3
K Mehrere Werte in einem Switch Case parallel überprüfen Java Basics - Anfänger-Themen 23
Zrebna Fragen zu einem Klassendiagramm Java Basics - Anfänger-Themen 8
S HashMap mehrere Keys zu einem Value Java Basics - Anfänger-Themen 3
S Java: Wie sortiere ich eine ArrayList benutzerdefinierter Objekte nach einem bestimmten Attribut? Java Basics - Anfänger-Themen 2
F 2x 16bit Werte zu einem 32bit und dann splitten mit 0xb Java Basics - Anfänger-Themen 1
F Einem GIT repository ein Projekt hinzufügen Java Basics - Anfänger-Themen 1
J Frage zu einem "Taschenrechner" code Java Basics - Anfänger-Themen 9
I Klassen von einem package laden, Statisches Feld auslesen und Objekt erstellen Java Basics - Anfänger-Themen 8
J Schlüsselworte Prüfen, ob ein bestimmtes, ganzes Wort in einem String enthalten ist. Java Basics - Anfänger-Themen 6
P Probleme mit NetBeans: Wie lässt sich jar. Datei an einem MacBook öffnen Java Basics - Anfänger-Themen 21
J Auf einem JLabel Linien Malen Java Basics - Anfänger-Themen 1
I @Entity Klassen, Service Beans etc. aus einem Share Projekt beziehen? Java Basics - Anfänger-Themen 26
R Images aus einem Array ausgeben Java Basics - Anfänger-Themen 3
XWing Randomizer mit einem String Java Basics - Anfänger-Themen 2
D OOP Array einem Objekt zuweisen Java Basics - Anfänger-Themen 2
O Zahlen aus einem char-array per char + Zeichen addieren Java Basics - Anfänger-Themen 2
S Bestimmte werte aus einem Array löschen Java Basics - Anfänger-Themen 2
S Ausgeben wie oft ein Wert in einem Array vorkommt Java Basics - Anfänger-Themen 7
N Einzelne Werte aus einem TreeSet auslesen Java Basics - Anfänger-Themen 2
N Welche Objekte kann man zu einem Set hinzufügen Java Basics - Anfänger-Themen 4
Kumora ArrayIndexOutOfBoundsException bei einem Sortierverfahren Java Basics - Anfänger-Themen 2
I Viereck / Rechteck Prüfung innerhalb einem bestimmten Bereich Java Basics - Anfänger-Themen 2
Distanz zwischen zwei Zeichenfolgen in einem String bestimmen Java Basics - Anfänger-Themen 5
Substring in einem String finden Java Basics - Anfänger-Themen 13
J Fehlerbehandlung an einem Beispiel Java Basics - Anfänger-Themen 8
I ResultSet aus meiner SQL-Abfrage in einem JTextfield ausgeben. Java Basics - Anfänger-Themen 1
I Innerhalb einem Bild ein Teil austauschen Java Basics - Anfänger-Themen 26
I Dateigröße von einem InputStream oder byte[] bekommen Java Basics - Anfänger-Themen 2
H Compiler-Fehler Klasse in einem Package wird nicht gefunden bzw. akzeptiert Java Basics - Anfänger-Themen 12
S Algorithmus entwicklen, der zu einem gegebenen Datum die Jahreszeit ermittelt Java Basics - Anfänger-Themen 13
B In einem Thread Endlosschleife beenden Java Basics - Anfänger-Themen 19
A Elemente in einem Array Java Basics - Anfänger-Themen 5
G Position einer unbekannten 3-stelligen-Zahl in einem String finden Java Basics - Anfänger-Themen 15
S Eine Variable in einem Array speichern Java Basics - Anfänger-Themen 5
T Methode, die prüft ob in einem Int-Array maximal 2 Zahlen enthalten sind, die größer als ihr Vorgänger sind Java Basics - Anfänger-Themen 5
berserkerdq2 Wie gebe ich den Pfad zu einer Datei an, die in einem Ordner in Eclipse ist? Java Basics - Anfänger-Themen 1
M Objekt in einem Objekt speichern Java Basics - Anfänger-Themen 9
J Speichern von zwei Variablen durch Auslesen aus einem Numberfield Java Basics - Anfänger-Themen 2
L Gridmuster in einem Array Java Basics - Anfänger-Themen 2
D spezifische Knoten in einem Baum zählen Java Basics - Anfänger-Themen 9
X Erste Schritte Hilfe bei einem kleinen Spiel. Java Basics - Anfänger-Themen 19
O Array mit einem Zeichen vergleichen Java Basics - Anfänger-Themen 1
B Brauche Hilfe zu einem Code Java Basics - Anfänger-Themen 5
J Zahlen bis zu einem bestimmten Grenzwert ausgeben Java Basics - Anfänger-Themen 11
P9cman Vokale in einem String überprüfen mittels Rekursion Java Basics - Anfänger-Themen 8
M Wie kann ich eine Methode aus einem Interface in eine Klasse implementieren, so dass sie ihre Funktion ausführt? Java Basics - Anfänger-Themen 7
M Wie kann ich in einem Konstruktor die Methode eines anderen Interfaces mit den jeweiligen Parametern aufrufen? Java Basics - Anfänger-Themen 8
Igig1 Wie lasse ich dir Werte in einem Array zusammenrücken? Java Basics - Anfänger-Themen 4
W Methode, die mit einem Datum arbeitet? Java Basics - Anfänger-Themen 22
Igig1 Welche Werte sind als default Werte in einem Array, der als Datentyp eine Klasse hat? Java Basics - Anfänger-Themen 1

Ähnliche Java Themen

Neue Themen


Oben