¿Cómo encontrar a cabo de manera eficiente el identificador de auto-generado para un nuevo objeto al utilizar JPA?

StackOverflow https://stackoverflow.com/questions/2686863

Pregunta

Tengo un atributo que está anotado con @Id. El ID va a ser generado automáticamente cuando persiste el objeto. Eso significa que el ID-valor no se define antes de que conservar el objeto. Después de que la persistencia, que tiene un ID (en la base de datos), pero por desgracia, el campo sigue siendo nula, siempre y cuando no vuelva a cargarlo desde el PP. ¿hay alguna manera fácil de averiguar el identificador generado? O mejor:? Para configurar que se escribirá en el campo

Gracias de antemano

¿Fue útil?

Solución

El ID se le asigna después de la descarga. Suponiendo que la entidad tiene un atributo Foo id anotado con las anotaciones @Id @GeneratedValue estándar, las siguientes obras de código:

Foo foo = new Foo();
//...
em.persist(foo);
em.flush();
assert foo.getId() != null;
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top