Skip to main content

Pagination in Java

Remark Controller:

PageRequest pageRequest = new PageRequest(remarkDto.getPageNumber(), Constants.REPORT_ITEM_PER_PAGE); Page<UserRemarks> remarksList = remarksQueryRepository.findAll(pageRequest); remarksList.getContent().stream().sorted((Comparator.comparing(UserRemarks::getRemarkDate) .reversed())).collect(Collectors.toList()); RemarkDtoPaginationResponse response = getRemarkDtoPaginationResponse(remarkDto, remarksList); return response; <br><br> @NotNull private RemarkDtoPaginationResponse getRemarkDtoPaginationResponse(RemarkDto remarkDto, Page<UserRemarks> remarksList) { List<RemarkDto> remarkDtos = mapperFactory.getMapperFacade().mapAsList(remarksList.getContent(), RemarkDto.class); RemarkDtoPaginationResponse response = new RemarkDtoPaginationResponse(); response.setContent(remarkDtos); response.setLast(remarksList.isLast()); response.setTotalElements((int) remarksList.getNumberOfElements()); response.setSize(remarksList.getSize()); response.setNumber(remarkDto.getPageNumber()); response.setFirst(remarksList.isFirst()); response.setTotalPages(remarksList.getTotalPages()); response.setNumberOfElements(remarksList.getNumberOfElements()); return response; }

Remark repository

@Query("select d from UserRemarks d order by d.remarkDate desc") Page findAllByOrderByDatesDesc(Pageable pageable);

Web Client



@RequestMapping(value = "/subscriber-remarks-list", method = RequestMethod.GET) @PreAuthorize("@permissionService.check('VIEW_USER_REMARKS')") public String listAllRemarks(@RequestParam(name = "remarkStartDate", required = false) String remarkStartDate, @RequestParam(name = "remarkEndDate", required = false) String remarkEndDate, @RequestParam(name = "name", required = false) String adminName, @RequestParam(name = "page", required = false) String page, HttpServletRequest request, Model model){ String url = apiGatewayAddress + "/user/get-remark-info"; int pageNumber = (page != null && !page.isEmpty()) ? Integer.parseInt(page) : 0; RemarkDto allRemarks = RemarkDto.builder() .adminFullName(adminName) .pageNumber(pageNumber) .build(); if (!StringUtils.isEmpty(remarkStartDate) && !StringUtils.isEmpty(remarkEndDate)) { Date createdAtStartDate = MfsUtils.stringToDate(remarkStartDate, "MMM dd yyyy"); Date createdAtEndDate = MfsUtils.stringToDate(remarkEndDate, "MMM dd yyyy"); allRemarks.setRemarkStartDate(createdAtStartDate); allRemarks.setRemarkEndDate(MfsUtils.getDayEndTime(createdAtEndDate)); } String queryString = request.getQueryString(); HashMap<String, String> parameterKeyValuePair = mfsUtils.getUrlParameterToKeyValuePair(queryString); List<SearchCriteria> searchCriteriaList = getRemarksCriteria(parameterKeyValuePair); RemarkDtoPaginationResponse remarkDto = restTemplate.postForObject(url, allRemarks, RemarkDtoPaginationResponse.class); List<RemarkDto> listDto = remarkDto.getContent(); RemarkDto[] remarkArray = new RemarkDto[listDto.size()]; for (int i = 0; i < listDto.size(); i++) { remarkArray[i] = listDto.get(i); } for (int i = 0; i < remarkArray.length; i++) { AdminDto adminDto = userService.getAdminInfo(remarkArray[i].getAdminId()); UserDto userDto = userService.getSubscriberInfo(remarkArray[i].getUserId()); listDto.get(i).setAdminFullName(adminDto.getFullName()); listDto.get(i).setAdminType(adminDto.getAdminType()); listDto.get(i).setUserFullName(userDto.getFullName()); } // RemarkDtoPaginationResponse remarks = new RemarkDtoPaginationResponse(); remarkDto.setContent(listDto); // model.addAttribute("remarks", remarks.getContent()); model.addAttribute("remarks", remarkDto); model.addAttribute("searchCriteriaList", searchCriteriaList); return "admin/subscriber/subscriber-remarks-list"; }

Comments

Popular posts from this blog

Q & A Chapter 1 | Internet Basics | Class 10 CBSE | Computer Application

 Q & A of Chapter 1 Internet Basics A. Tick the correct options – 1. (b) TCP/IP 2. (a) Internet Service Provider 3. (a) URL 4. (b) HTTP 5. (a) Bridge 6. (a) home page 7. (d) All of these 8. (b) Domain Naming System 9. (b) Rules 10. (d) ARPANET B. Very Short Answer Type Questions – 1. In the URL http://www.myfirm.co.in/about.html , what do the following components depict? (a) http                                                 (b) in (a) Http represents a type of server and the protocol on the Internet (b) ‘in’ represents the domain extension of the website. 2. In the URL http://www.favmusic.com/contactus.html what does www.favmusic stand for? www.favmusic represents the domain name i.e. favmusic in www. 3. W...

Q & A Chapter 2 | Internet Services | Class 10 CBSE | Computer Application

 Q & A of Chapter 2 A. Tick the correct option – 1. (b) Browser 2. (a) surfing 3. (a) downloading 4. (d) FTP 5. (b) e-mail 6. (c) chat 7. (a) @ 8. (c) Acronyms 9. (d) Emoticons 10. (a) newsgroup B. Very short answer questions – 1. Name a few search engines. Which is the most popular one? Some common search engines are Bing, Google, Ask, Yahoo and MSN. The most popular search engine is Google. 2. What is an Acronym of FTP? File Transfer Protocol. 3. What is a newsreader? Give an example. A newsreader is a software tool or utility used to browse through newsgroup postings. A very popular newsreader in use today is Microsoft Outlook Express. 4. Name three sites that support e-mail services. Gmail, Outlook and Yahoo are three sites that support e-mail services. 5. What is the difference between attachments and FTP? Attachments are the files which are send through an e-mail for communication, while in FTP transfer of files takes place between FTP server and FTP clients and no commun...

Bit by Bit | Chapter 6 - Graphics and Sound in QB64 | QBasic | Class 7 CBSE | Computer Application

Bit by Bit | Chapter 6 - Graphics and Sound in QB64 A. Tick the correct option. 1. (d) screen mode 0 2. (b) 640 x 350 3. (d) White 4. (a) Lower-Right 5. (c) PSET 6. (c) Generate a tone for a short duration B. Fill in the blanks. 1. CIRCLE 2. PAINT 3. PLAY 4. Graphic 5. Pixels 6. Box C. True or False. 1. True 2. False 3. False 4. True 5. True 6. True D. Answer the following questions. 1. What is the use of SCREEN statement? The SCREEN statement is used to set the screen mode for displaying graphics. There are many screen modes and each screen modes have their own number which is from SCREEN 1 to SCREEN 13. The various screen modes differ in resolution. 2. What is a pixel? How is it related to resolution? The graphics which is displaying on the computer screen is made up of thousands of dots called pixel. Pixel stands for picture element. The number of pixels in an image determines the resolution of the image. Higher the resolution, cleaner the image will appear. 3. What is the differenc...