Pregunta

Estoy utilizando JPA 2 para una aplicación empresarial, y mi DBA es sólo me golpeó con un toque.

Me quieren utilizar generador de ID de objeto centralizado del grupo para todos mis tablas . Este medio en lugar de utilizar valores de la tabla o una tabla de secuencias, I tendrán que llamar a un servicio web para obtener un lote de identificadores de ~ 50 .

A continuación, mientras persista algún nuevo objeto, que tendría que inyectar este Identificación del primer , y salvo que a la mesa.

Entonces, ¿cómo puedo manipular la columna @Id de una entidad para manejar esto.

¿Es tan simple como la creación de una tecla antes de persisto? Sospecho que lanzaría algún tipo de entidad no administrado con el error de ID del monitor.

¿Fue útil?

Solución

Actualización:

El mejor método es especificar en realidad una estrategia de secuencia en campos generados y especificar una clase de secuencia personalizado.

APP entonces llamar al método de esta clase NextID () cada vez que se inserta un nuevo objeto.

Este método permite gráficos completos para persistir sin intervenir en cada entidad manualmente.


descubierto. Increíblemente compleja;.) - acaba de quitar la anotación GeneratedValue desde el campo de clave

Está destinado a nativos Ids como SSN o de correo electrónico, pero funciona independientemente de la fuente.

@Entity
public class Client{

    @Id
    @Column(name="CLNT_ID") 
    private long key;
    @Column(name="CLNT_NUM")
    private String clientNumber;
...
}
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top