strategy sequencegenerator generationtype generatedvalue generate example data autoincrement java jpa

java - sequencegenerator - Guardar orden de una lista en JPA



jpa java entity (3)

Tengo la siguiente pregunta sobre JPA:

¿Puedo guardar el orden de los elementos en java.util.List? En mi aplicación, el orden en que coloco elementos en las Listas es importante, pero después de obtener esas colecciones de la base de datos, el orden no es el mismo (como se esperaba). ¿Puedes mostrarme una forma de lidiar con este problema?

PD: No hay un campo en las entidades que coloco en las colecciones por las cuales puedo ordenarlas.

Rosen



JPA tiene 2 tipos de listas. En JPA1 hay una "lista ordenada" (que es lo que ves, orden definida por alguna cláusula SQL). En JPA2 puede tener "listas ordenadas" o alternativamente "listas indexadas" (donde se preserva el orden de creación) ... se hace referencia al @OrderColumn. Cualquier implementación de JPA2 tendrá que soportar esto, por ejemplo, DataNucleus.

JDO ha tenido listas indexadas desde el día 1


Puede guardar el orden de los elementos en java.util.List. En JPA 2.0, existe una buena manera de guardar el orden del elemento mediante la anotación @OrderColumn.

Para más detalles, puede consultar este enlace Order Column (JPA 2.0)