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

Spring Data MongoDB Annotation @CreatedDate funktioniert nicht, wenn die ID manuell zugewiesen wird

Ihr Code funktioniert wie erwartet. Nachdem Sie Persistable implementiert haben Sie können das @CreatedDate sehen Anmerkung funktioniert.

Sicher, dass createdDate ist null beim zweiten Aufruf von save da das Objekt bereits in der Datenbank existiert und Sie es mit createdDate = null aktualisiert haben . Wie Sie der Dokumentation für @CreatedDate entnehmen können :

Um Ihr createdDate nicht zu überschreiben mit null beim zweiten Aufruf sollten Sie Ihren Kunden mit c = repository.findOne("test_id"); aus der Datenbank abrufen und dann aktualisieren.