sql >> Database >  >> RDS >> Mysql

Lente, Slaapstand, Blob Lazy Loading

Ik ben in de war. Emmanuel Bernard schreef in ANN-418 dat @Lob zijn standaard lui (d.w.z. u hoeft niet eens de @Basic(fetch = FetchType.LAZY) te gebruiken annotatie).

Sommige gebruikers melden dat lui laden van een @Lob werkt niet met alle stuurprogramma's/database .

Sommige gebruikers melden dat het werkt bij gebruik van bytecode-instrumentatie (javassit? cglib?).

Maar ik kan geen duidelijke verwijzing van dit alles vinden in de documentatie.

Aan het einde, de aanbevolen tijdelijke oplossing is om een "nep" één-op-één toewijzingen te gebruiken in plaats van eigenschappen. Verwijder de LOB-velden uit uw bestaande klasse, maak nieuwe klassen die verwijzen naar dezelfde tabel, dezelfde primaire sleutel en alleen de noodzakelijke LOB-velden als eigenschappen. Specificeer de toewijzingen als één-op-één, fetch="select", lazy="true". Zolang je bovenliggende object zich nog in je sessie bevindt, zou je precies moeten krijgen wat je wilt. (transponeer dit gewoon naar annotaties).



  1. Zip met behulp van Oracle Stored Procedure

  2. Dichtstbijzijnde match, deel 2

  3. SQL-injectie-aanvallen voorkomen met Python

  4. selecteer count(*) uit de tabel van mysql in php