MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

Warum kann Spring Data MongoDB diese verschachtelte Typstruktur nicht instanziieren?

Dies scheint ein Problem mit doppelt verschachtelten inneren Klassen und den vom Compiler erstellten synthetisch generierten Konstruktoren zu sein. Ich könnte das Problem lokal reproduzieren und sehen, ob wir eine Lösung bereitstellen können. In der Zwischenzeit haben Sie zwei Möglichkeiten:

  1. Wandle die innere Klasse in statische um, da dies die synthetischen Konstruktoren entfernt und die Instanziierung korrekt funktioniert.
  2. Verschachteln Sie die Typdeklarationen genauso wie die Eigenschaften. D.h. Verschieben Sie die ParamData Klasse in die Group Klasse, DataConfig in Config da dies dazu führt, dass die synthetischen Konstruktoren so erstellt werden, dass sie der Instanziierungsreihenfolge entsprechen, auf die Spring Data derzeit angewiesen ist.

Ich würde den ersteren Ansatz vorschlagen, da er die Klassen nicht künstlich an Instanzen der äußeren Klasse bindet.