---
title: 'Tiefe Objektkopien mit JAXB und JAXBSource'
url: 'https://www.tutego.de/blog/javainsel/2012/10/tiefe-objektkopien-mit-jaxb-und-jaxbsource'
markdown: 'https://www.tutego.de/blog/javainsel/2012/10/tiefe-objektkopien-mit-jaxb-und-jaxbsource.md'
date: '2012-10-10'
description: 'Die unmarshal(…)-Methoden ist überladen mit Parametern, die typische Datenquellen repräsentieren, etwa Dateien oder Eingabeströme wie ein Reader. Allerdings sind noch andere Parametertypen interessant, und es lohnt sich, hier einmal in die API-Dokumentation zu schauen. Ein spannender Typ ist javax.…'
taxonomy:
  category:
    - Insel
---

# Tiefe Objektkopien mit JAXB und JAXBSource

![Illustration einer tropischen Insel mit Palmen und einem hohen Berg](https://www.tutego.de/blog/javainsel/user/themes/tutego/images/insel-cover.jpg)# Java Blog für Programmierer

[Java Blog für Programmierer](https://www.tutego.de/blog/javainsel/)

## Tiefe Objektkopien mit JAXB und JAXBSource

10.10.2012 · [Christian Ullenboom](https://www.tutego.de/blog/javainsel/author/admin/)

Die `unmarshal(…)`-Methoden ist überladen mit Parametern, die typische Datenquellen repräsentieren, etwa Dateien oder Eingabeströme wie ein `Reader`. Allerdings sind noch andere Parametertypen interessant, und es lohnt sich, hier einmal in die API-Dokumentation zu schauen. Ein spannender Typ ist `javax.xml.transform.Source`, beziehungsweise die Implementierung der Schnittstelle durch JAXBSource. JAXBSource ist die Quelle, aus denen JAXB seine Informationen bezieht, um ein neues Java-Objekt zu rekonstruieren.

Das nächste Beispiel nimmt sich ein Objekt room als Basis und erzeugt eine tiefe Kopie davon:

Room room = …

```java
JAXBContext context = JAXBContext.newInstance( Room.class );

Unmarshaller unmarshaller = context.createUnmarshaller();

JAXBSource source = new JAXBSource( context, room );

Room copiedRoom = Room.class.cast( unmarshaller.unmarshal( source ) );

System.out.println( copiedRoom.getPlayers() ); // [com.tutego.insel.xml.jaxb.Player@...]
```

Das Beispiel zeigt somit, wie sich mit Hilfe von JAXB Objektkopien erzeugen lassen.

Kategorien: [Insel](https://www.tutego.de/blog/javainsel/category/insel/)

[← Alle Beiträge](https://www.tutego.de/blog/javainsel/)

---

## Navigation

- Previous: [In Java 8 wird der XML-Import/Export Algorithmus der Properties-Klasse austauschbar](https://www.tutego.de/blog/javainsel/2012/10/in-java-8-wird-der-xml-importexport-algorithmus-der-properties-klasse-austauschbar.md)
- Next: [Offtopic: tutego sucht freiberufliche Trainer](https://www.tutego.de/blog/javainsel/2012/10/offtopic-tutego-sucht-freiberufliche-trainer.md)
