के साथ डेटा फ़िल्टर करना मेरे पास एक साधारण आरईएसटी सेवा है जो स्प्रिंग बूट CrudRepository
के साथ डेटा तक पहुंचती है।स्प्रिंग बूट क्रूड रिपोजिटरी
यह भंडार पहले से ही पृष्ठांकन और छँटाई क्षमताओं इस तरह लागू करता है:
public interface FlightRepository extends CrudRepository<Flight, Long> {
List<Flight> findAll(Pageable pageable);
}
यह कॉलिंग:
Sort sort = new Sort(direction, ordering);
PageRequest page = new PageRequest(xoffset, xbase, sort);
return flightRepo.findAll(page);
मैं भी इस भंडार को छानने में जोड़ना चाहते हैं (उदाहरण के लिए id > 13 AND id < 27
के साथ ही संस्थाओं वापसी)। CrudRepository इस कार्यक्षमता का समर्थन नहीं करता प्रतीत होता है। क्या यह कुछ तरीका है कि इसे कैसे प्राप्त किया जाए या क्या मुझे अलग-अलग दृष्टिकोण का उपयोग करने की आवश्यकता है?
किसी भी सुझाव के लिए धन्यवाद!
क्या इसे पेजेबल के साथ जोड़ा जा सकता है? मैं उम्मीद कर रहा था कि मैं इसे किसी ऑब्जेक्ट में निर्दिष्ट कर सकता हूं और इसे फ़ंक्शन पर भेज सकता हूं। कुछ लचीलापन चाहते समय यह बहुत आसान नहीं है (उपयोगकर्ता फ़िल्टर किए जाने के लिए कस्टम फ़ील्ड निर्दिष्ट कर सकता है और मुझे हर संभव संयोजन के लिए इस तरह का एक फ़ंक्शन निर्दिष्ट करना होगा ...) – Smajl
हां, आप सिम्पी का उपयोग कर सकते हैं 'सूची findByIdBetween (लंबी शुरुआत , लांग एंड, पेजेबल पेजेबल) ' –
pezetem
आपको विस्तारित इंटरफेस को 'पेजिंग एंड सोर्सिंग रिपोजिटरी' में बदलने की भी सिफारिश करता है .. –