Ich habe ein paar Pojos in verschiedenen Paketen, jedes POJO enthält einen Satz der anderen Pojo aus dem gleichen Paket. Ich muss alle Elemente mit dem gleichen Namen aus Paket B Pojos zu Objekten in Paket A kopieren.
Hinweis:
%Vor% %Vor% %Vor% %Vor% Ich möchte rekursiv alle Elemente von PackageB
classes in packageA
classes kopieren, die in PaCkageB
existieren und denselben Namen haben.
Aktualisierungen:
Leute, ich verstehe, dass das eine blöde Frage ist, aber ich muss diesen Code beibehalten, jetzt ist der Code so geschrieben, dass er 50 Getter und Setter aufrufen muss oder Konstruktor mit 50 Parametern aufrufen muss. Leider kann ich nicht das gleiche Objekt verwenden und ich muss es kopieren, aber ich muss mehr "elegante" Möglichkeit finden, diese Bohnen zu kopieren.
Jeder Grund, warum Apache BeanUtils.copyProperties funktioniert nicht?
Nun .. Dozer könnte genau das sein, wonach Sie suchen.
. . . es ist ein Objekt zum Objekt-Mapping-Framework. Die Idee ist:
. . Daher sind Mapping-Dateien so kompakt wie möglich. Es ist in vielen Fällen nützlich, z. B. beim Zuordnen eines Anwendungsfalls, bei dem die Service-Nutzlast den wiederverwendbaren Kernmodellobjekten zugewiesen wird.
Bei der Bereitstellung der SpringSource-Schulungen haben wir oft auf diesen Rahmen hingewiesen.
Siehe mapsstruct . Dieses Werkzeug erzeugt Code, so dass es bei der Reflektion keinen Overhead gibt.
Kopieren von Feldern Werte sind ein Muss ich fast jedes Projekt, zum Beispiel für den Klon (). Ich denke auch, dass für die Erreichung einiger Ziele nicht erforderlich ist, Import .jars für die Verwendung nur einer Funktion. Ich möchte ein wenig Code teilen, in dem ich gearbeitet habe, es gibt einige Dinge, die ich im Tintenfass gelassen habe, aber im Allgemeinen macht es die Arbeit. In diesem Fall verwende ich Reflexion.
%Vor%Hoffe diese Hilfe.
Wenn DRY ein grundlegendes Prinzip der Informatik ist, welchen Grund können Sie für zwei identische, parallele Objektgraphen geben? Sie haben nicht nur Ihre Wartungslast verdoppelt, sondern müssen jetzt eine rekursive Methode entwickeln, um nichts anderes zu tun, als Daten von einem zum anderen zu transportieren.
Tags und Links java apache-commons