Հետ
Ծրագրավորում և բաց կոդ

Hibernate getReference(). երբ SELECT-ը ընդհանրապես պետք չէ

Habr
Advertisement468 × 90
Hibernate getReference(). երբ SELECT-ը ընդհանրապես պետք չէ

Հոդվածում քննարկվում է Hibernate-ի հետ աշխատելիս N+1 հարցումների դասական խնդիրը և դրա օպտիմալացման եղանակները: Հեղինակը նշում է, որ թեև JOIN FETCH-ը և EntityGraph-ը այս խնդրի լուծման ստանդարտ գործիքներ են, մշակողները հաճախ անտեսում են getReference() (նախկինում՝ load()) մեթոդը: Այս մեթոդը թույլ է տալիս ստանալ էնտիթիի պրոքսի օբյեկտ՝ առանց տվյալների բազային SELECT SQL հարցում ուղարկելու, եթե օբյեկտի նույնացուցիչը արդեն հայտնի է: getReference()-ի օգտագործումը արդյունավետ է այն սցենարներում, երբ անհրաժեշտ է կապ հաստատել էնտիթիների միջև կամ ջնջել օբյեկտը՝ առանց դրա ամբողջական տվյալները հիշողության մեջ բեռնելու: Հոդվածը մանրամասն բացատրում է պրոքսի օբյեկտների աշխատանքի մեխանիկան, դրանց արտադրողականության առավելությունները և հնարավոր ռիսկերը, ինչպիսիք են LazyInitializationException-ը: Նյութը օգտակար կլինի Java մշակողների համար, ովքեր ձգտում են օպտիմալացնել տվյալների բազայի հետ փոխգործակցությունը:

This is a summary. Read the full article at the original source:

Habr
Advertisement468 × 90
Share
Ծրագրավորում և բաց կոդ

Կապակցված

Advertisement970 × 250