Cómo asignar valor de PrimaryKey (generada a partir de la secuencia) a otra variable, mientras que persiste con la APP?

jayanth:

He puesto en marcha un generador basado en secuencia personalizada que genera la clave principal de una entidad. Quiero asignar mismo valor a otra variable miembro, mientras que persiste la entidad. ¿Hay alguna forma esto se puede hacer?

Prashant:

Puede utilizar un @PostPersistmétodo anotado. Para simplificar las cosas, me dejaron de utilizar un ID generado de forma automática.

@Entity
@Table(name = "PERSON")
class Person {

    @Id
    @GeneratedValue
    private Long id;

    private Long idDup;

    // Getters and setters removed for brevity

    @PostPersist
    public void perPersist() {
        this.idDup = id;
    }
}

A partir de la documentación:

@PostPersist se ejecuta después de que el gestor de la entidad persisten operación se realizará realmente en cascada. Esta llamada se invoca después de que se ejecuta la base de datos INSERT.

Tenga en cuenta que @PostPersistes una anotación de la APP por lo tanto, sería trabajar en todos los proveedores.

Supongo que te gusta

Origin http://10.200.1.11:23101/article/api/json?id=388297&siteId=1
Recomendado
Clasificación