স্পষ্টতই, হাইবারনেট এপিআই-এ কোয়েরি.লিস্ট () পদ্ধতিটি "ডিজাইনের মাধ্যমে" নিরাপদ নয় এবং এটি পরিবর্তন করার কোনও পরিকল্পনা নেই ।
আমি বিশ্বাস করি যে সংকলক সতর্কতাগুলি এড়ানোর সহজ সমাধানটি হ'ল @ সাপ্রেস ওয়ার্নিংস ("চেক না করা") যুক্ত করা। এই টীকাটি পদ্ধতির স্তরে বা কোনও পদ্ধতির অভ্যন্তরে, পরিবর্তনশীল ঘোষণার ঠিক আগে স্থাপন করা যেতে পারে ।
আপনার কাছে এমন একটি পদ্ধতি রয়েছে যা ক্যোয়ারি.লিস্ট () সরবরাহ করে এবং তালিকা (বা সংগ্রহ) ফেরত দেয়, আপনি একটি সতর্কতাও পান। তবে এইটিকে @ সাপ্রেস ওয়ার্নিংস ("কাঁচা টাইপস") ব্যবহার করে চাপা দেওয়া হয়েছে।
ম্যাট কোয়েল প্রস্তাবিত তালিকাঅ্যান্ডকাস্ট (ক্যোয়ারী) পদ্ধতিটি কোয়েরি.লিস্ট () এর চেয়ে কম নমনীয়। যদিও আমি এটি করতে পারি:
Query q = sess.createQuery("from Cat cat");
ArrayList cats = q.list();
আমি যদি নীচের কোডটি চেষ্টা করি:
Query q = sess.createQuery("from Cat cat");
ArrayList<Cat> cats = MyHibernateUtils.listAndCast(q);
আমি একটি সংকলন ত্রুটি পেয়েছি: অমিল টাইপ করুন: তালিকা থেকে অ্যারেলিস্টে রূপান্তর করতে পারে না