PR2bUebungsstunde/SerializationExample.java

45 lines
1.9 KiB
Java

package Serialisierung;
import java.io.*;
public class SerializationExample {
public static void main(String[] args) {
// Erstelle ein Produkt
Product product = new Product("Smartphone", "Ein leistungsstarkes Smartphone", 699.99);
// Dateiname für die Serialisierung
String filename = "product.ser";
// Serialisierung
serializeProduct(product, filename);
// Deserialisierung und Ausgabe
Product deserializedProduct = deserializeProduct(filename);
System.out.println("Deserialisiertes Produkt:");
System.out.println("Name: " + deserializedProduct.getName());
System.out.println("Beschreibung: " + deserializedProduct.getDescription());
System.out.println("Preis: " + deserializedProduct.getPrice());
}
// Methode zur Serialisierung eines Produkts
private static void serializeProduct(Product product, String filename) {
try (ObjectOutputStream outputStream = new ObjectOutputStream(new FileOutputStream(filename))) {
outputStream.writeObject(product);
System.out.println("Produkt wurde erfolgreich serialisiert.");
} catch (IOException e) {
System.err.println("Fehler bei der Serialisierung des Produkts: " + e.getMessage());
}
}
// Methode zur Deserialisierung eines Produkts
private static Product deserializeProduct(String filename) {
Product product = null;
try (ObjectInputStream inputStream = new ObjectInputStream(new FileInputStream(filename))) {
product = (Product) inputStream.readObject();
System.out.println("Produkt wurde erfolgreich deserialisiert.");
} catch (IOException | ClassNotFoundException e) {
System.err.println("Fehler bei der Deserialisierung des Produkts: " + e.getMessage());
}
return product;
}
}