AFAIK उन अतिरिक्त प्रश्नों को हटाने के लिए, अपने सभी संशोधकों को अपने @Transactional
. में हटा दें एनोटेशन। अपने आइसोलेशन स्तर को READ_COMMITED
. तक सीमित रखने के लिए आप जो कीमत चुकाते हैं यह है कि हाइबरनेट को यह निर्धारित करने के लिए अतिरिक्त प्रश्न करने की आवश्यकता होगी कि क्या डेटाबेस एक गंदी स्थिति में है। 90% मामलों के लिए, ये संशोधक अनावश्यक हैं। हाइबरनेट यह सुनिश्चित करने में बहुत अच्छा है कि इन प्रतिबंधों को जोड़ने की कोशिश किए बिना आपका डेटा साफ रहेगा।
यदि आपके लिए यह सुनिश्चित करना नितांत आवश्यक है कि आपका अलगाव READ_COMMITTED
है , आप अतिरिक्त प्रश्नों के बारे में कुछ नहीं कर सकते।
एक StatelessSession
में जाना बस उन प्रश्नों से छुटकारा पाने के लिए ठीक उसी कारण से एक बुरा विचार है जिस कारण आपने बताया। वास्तव में, StatelessSession
. का उपयोग करने का एकमात्र वैध कारण डेटा के बड़े बैच इंसर्ट के लिए है जिसे आप जानते हैं कि इंसर्ट होने के दौरान पढ़ा नहीं जाएगा।