sql >> Base de Datos >  >> NoSQL >> MongoDB

La anotación de Spring Data MongoDB @CreatedDate no funciona, cuando la ID se asigna manualmente

Su código está funcionando como se esperaba. Después de implementar Persistable puedes ver que @CreatedDate la anotación está funcionando.

Seguro que createdDate es null en la segunda llamada de save porque el objeto ya existe en la base de datos y lo actualizó con createdDate = null . Como puede ver en la documentación de @CreatedDate :

Para no sobrescribir su createdDate con null en la segunda llamada, debe recuperar a su cliente de la base de datos con c = repository.findOne("test_id"); y luego actualícelo.