"Si un trabajador quiere hacer bien su trabajo, primero debe afilar sus herramientas." - Confucio, "Las Analectas de Confucio. Lu Linggong"
Página delantera > Programación > ¿Cómo configurar la carga perezosa para la relación JPA onetoone?

¿Cómo configurar la carga perezosa para la relación JPA onetoone?

Publicado el 2025-04-19
Navegar:709

How Can I Configure Lazy Fetching for JPA OneToOne Relationships?

Configuración declarativa de recuperación perezosa para las relaciones JPA Onetoone

Una optimización común en aplicaciones JPA es para habilitar la obtención de la recaudación perezosa para las relaciones. Por defecto, JPA obtiene ansiosamente asociaciones de onetoone, lo que puede conducir a problemas de rendimiento en situaciones en las que no siempre se necesita la entidad asociada. Este artículo explora los métodos para configurar las relaciones de Onetoone como perezosas, abordando un problema específico que enfrenta un usuario donde la recuperación ansiosa estaba causando cuellos de botella de rendimiento.

Primero, es importante aclarar que las asociaciones individuales incondicionadas (anulables) no se pueden proponer sin instrumentación de código de texto. Esto se debe a que la entidad de propiedad debe determinar si la propiedad de la asociación debe contener un proxy o nulo, que no se puede determinar únicamente en función de las columnas de la tabla base.

para las asociaciones de muchas a uno (y asociaciones individuales), es factorable. La entidad de propiedad puede verificar fácilmente su clave extranjera (o crear un proxy de colección vacía para las asociaciones individuales) para poblar la asociación a pedido.

para habilitar la recuperación de lazy para una asociación @ManyToOne, la anotación @ManyToOne se puede anotar con fetch = fetchType.lazy. Sin embargo, es crucial verificar que la consulta en sí no sobrescriba esta configuración.

La instrumentación es la única opción.

@OneToOne(optional = false, fetch = FetchType.LAZY)
Último tutorial Más>

Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.

Copyright© 2022 湘ICP备2022001581号-3