यदि आप एक जेपीए रिपोजिटरी विधि में पेजेबल का उपयोग करते हैं, तो वसंत हमेशा एक पृष्ठ को सूची में वापस नहीं करेगा। मेरा सुझाव है कि आपके पास एक सेवा विधि है जो रिपोजिटरी विधि को कॉल करती है और पेज परिणाम की सामग्री को सूची में निकाल देती है।
इसलिए यदि आपके भंडार विधि इस प्रकार है:
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.stereotype.Repository;
@Repository
public interface RecordRepository extends JpaRepository<Record, Integer>{
Page<Record> findAll(Pageable pageable);
}
तो आप एक सेवा वर्ग है जो एक विधि है कि भंडार विधि कॉल करने के बजाय कॉल
@Service
public class RecordService{
@Autowired
RecordRepository recordRepository;
public List<Record> findAll(PageRequest pageRequest){
Page<Record> recordsPage = recordRepository.findAll(pageRequest);
return recordsPage.getContent();
}
}
तो अपने बुला कक्षा में है हो सकता है रिपोजिटरी सीधे आप सेवा का उपयोग कर सकते हैं। इस प्रकार:
public class MyRecordImpl{
@Autowired
RecordService recordService;
public void doSomething(){
int page = 0; int pageSize = 5;
List<Record> recordList = recordService.findAll(new PageRequest(page, pageSize, new Sort(Sort.Direction.DESC, "recordId")));
//do other implementations here
}
}
लेकिन '.getContent()' सब कुछ सब से लौटने करता है पेज, या सिर्फ उस पृष्ठ के डेटा? – mmcrae
@mmcrae .getContent() केवल उस पृष्ठ के डेटा को लौटाता है – Sohlowmawn
सभी पृष्ठों से सबकुछ कैसे प्राप्त करें और उन्हें सूची में कैसे बदलें? – gavinSong