Ich verwende derzeit Spring-Daten mongodb 1.6.0-RELEASE und ich weiß, dass es Auditing-Funktion hat. ich
Setze @EnableMongoAuditing
Annotation über meine Konfigurationsklasse. Und meine Bohne ist unten:
Wenn ich diese Bean mit mongoTemplate.save(myBean);
speichere, wird das Erstellungsdatum und das Datum der letzten Änderung nicht eingestellt ... Und es hat keine Fehler.
Jede Hilfe wäre willkommen,
Danke.
Das eigentliche Problem war die Annotation @Id
. Um das Spring-Auditing korrekt zu verwenden, müssen Sie eine ObjectId (Null für neue gespeicherte Objekte) definieren, so wie die Feder @LastModifiedDate
und @CreatedDate
Danach habe ich eine Möglichkeit gefunden, benutzerdefinierte Beans in @Id
zu verwenden, indem ich Auditable<String,String>
Danke an @Felby:
Ich habe festgestellt, dass das Feld @Id zum Zeitpunkt des Speicherns () null sein muss. nur für die @CreatedDate- und @CreatedBy-Annotationen. Das @LastModifiedDate und @LastModifiedBy Felder unabhängig von ob das @ Id-Feld initialisiert wurde oder nicht.
Tags und Links java spring spring-mvc mongodb spring-data-mongodb