private PageRequest buildPageRequest(int pageNumber, int pageSize, String sortType) { Sort sort = null; //默认 id 排序 可以 按照 需求 调整 if ("auto".equals(sortType)) { sort = Sort.by(Sort.Order.desc("id")); } return PageRequest.of(pageNumber - 1, pageSize, sort);
时间: 2024-04-09 10:31:15 浏览: 13
这段代码是用于构建分页请求的方法。它接受三个参数:pageNumber(页码),pageSize(每页大小)和sortType(排序类型)。根据sortType的值,它会构建不同的排序方式。
如果sortType等于"auto",则使用id字段进行降序排序。否则,可以根据需要进行调整。
最后,它会返回一个PageRequest对象,用于分页查询。这个对象包含了pageNumber、pageSize和sort信息。
相关问题
public Page<Doctor> getPage(int pageNumber, int pageSize, String sortType) { PageRequest pageRequest = buildPageRequest(pageNumber, pageSize, sortType); Page<Doctor> listPage = dao.findAll(pageRequest); return listPage;
这段代码是一个用于获取分页数据的方法。它接受三个参数:pageNumber(页码),pageSize(每页大小)和sortType(排序类型)。
首先,它调用了之前提到的buildPageRequest方法,通过传入pageNumber、pageSize和sortType来构建一个PageRequest对象。
接下来,它使用这个PageRequest对象调用dao的findAll方法,从数据库中获取符合分页和排序条件的数据。
最后,它将获取到的数据以Page<Doctor>的形式返回。
这段代码的作用是通过分页和排序条件,从数据库中获取医生数据并返回分页结果。
@ApiOperation(value = "分页", notes = "") @RequestMapping(value = "/page", method = RequestMethod.GET) public String page(@RequestParam(value = "page", defaultValue = "1") int pageNumber, @RequestParam(value = "page.size", defaultValue = Constant.PAGE_SIZE) int pageSize, @RequestParam(value = "sortType", defaultValue = "auto") String sortType, HttpServletRequest request, Model model) { HttpSession session = request.getSession(); User user = (User) session.getAttribute("user"); if (user == null) { return "login"; } //为我们 封装了 动态 查询语句 search_这个 开头 search_EQ_xxxx(字段名称) 就是查询 相等 //search_Like_xxxx 模糊 //EQ, LIKE, GT, LT, GTE, LTE, NOTEQ, ISNULL, ISNOTNULL, ORLIKE, IN, NOTIN Map<String, Object> searchParams = Servlets.getParametersStartingWith(request, "search_"); Page<Appointment> page = appointmentService.getPage(searchParams,pageNumber, pageSize, sortType); model.addAttribute("list", page); return "appointment/list"; }
这段代码是一个用于分页查询的接口方法。它使用了Spring MVC框架,并且通过GET请求访问。该方法接收了一些参数,包括页码(pageNumber)、每页大小(pageSize)、排序类型(sortType),还有HttpServletRequest和Model对象。
该方法首先从HttpServletRequest中获取当前用户的信息,如果用户为空,则返回"login"字符串,表示需要进行登录操作。
接下来,该方法通过使用Servlets工具类,从请求参数中获取以"search_"开头的动态查询参数。这些参数可以用于构建动态查询语句,包括相等查询(search_EQ_xxxx)、模糊查询(search_Like_xxxx)、大于(GT)、小于(LT)、大于等于(GTE)、小于等于(LTE)、不等于(NOTEQ)、为空(ISNULL)、不为空(ISNOTNULL)、或者包含(ORLIKE)、包含于(IN)、不包含于(NOTIN)等。
然后,该方法调用appointmentService的getPage方法,传入查询参数、页码、每页大小以及排序类型,获取分页结果。
最后,将查询结果添加到Model中,返回"appointment/list"字符串,表示跳转到预约列表页面。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
使用中文解释ssm管理系统文件中util文件里PageHelper类解释以下代码package com.util; import java.util.ArrayList; import java.util.List; import javax.servlet.http.HttpServletRequest; public class PageHelper { public static void getPage(List<?> list, String name, List<String> nameList, List<String> valueList, int pageSize, String number, HttpServletRequest request, String method) { StringBuffer buffer = new StringBuffer(); String name2 = name.substring(0, 1).toUpperCase() + name.substring(1); String path = ""; String action = "getAll" + name2 + ".action"; if (method != null) { action = "query" + name2 + "ByCond.action"; } List<Object> objList = new ArrayList<Object>(); if (nameList != null && valueList != null) { for (int i = 0; i < nameList.size(); i++) { path += "&" + nameList.get(i) + "=" + valueList.get(i); } } int pageNumber = list.size(); int maxPage = pageNumber; if (maxPage % pageSize == 0) { maxPage = maxPage / pageSize; } else { maxPage = maxPage / pageSize + 1; } if (number == null) { number = "0"; } int start = Integer.parseInt(number) * pageSize; int over = (Integer.parseInt(number) + 1) * pageSize; int count = pageNumber - over; if (count <= 0) { over = pageNumber; } for (int i = start; i < over; i++) { Object obj = list.get(i); objList.add(obj); } buffer.append(" 共为"); buffer.append(maxPage); buffer.append("页 共有"); buffer.append(pageNumber); buffer.append("条 当前为第"); buffer.append((Integer.parseInt(number) + 1)); buffer.append("页 "); if ((Integer.parseInt(number) + 1) == 1) { buffer.append("首页"); } else { buffer.append("首页"); } buffer.append(" "); if ((Integer.parseInt(number) + 1) == 1) { buffer.append("上一页"); } else { buffer.append("上一页"); } buffer.append(" "); if (maxPage <= (Integer.parseInt(number) + 1)) { buffer.append("下一页"); } else { buffer.append("下一页"); } buffer.append(" "); if (maxPage <= (Integer.parseInt(number) + 1)) { buffer.append("尾页"); } else { buffer.append("尾页"); } String html = buffer.toString(); request.setAttribute("html", html); request.setAttribute(name + "List", objList); }
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
public static void getUserPage(List<?> list, String name, String actionName, int pageSize, String number, HttpServletRequest request) { StringBuffer buffer = new StringBuffer(); String path = ""; String action = actionName + ".action"; List<Object> objList = new ArrayList<Object>(); int pageNumber = list.size(); int maxPage = pageNumber; if (maxPage % pageSize == 0) { maxPage = maxPage / pageSize; } else { maxPage = maxPage / pageSize + 1; } if (number == null) { number = "0"; } int start = Integer.parseInt(number) * pageSize; int over = (Integer.parseInt(number) + 1) * pageSize; int count = pageNumber - over; if (count <= 0) { over = pageNumber; } for (int i = start; i < over; i++) { Object obj = list.get(i); objList.add(obj); } buffer.append(" 共为"); buffer.append(maxPage); buffer.append("页 共有"); buffer.append(pageNumber); buffer.append("条 当前为第"); buffer.append((Integer.parseInt(number) + 1)); buffer.append("页 "); if ((Integer.parseInt(number) + 1) == 1) { buffer.append("首页"); } else { buffer.append("首页"); } buffer.append(" "); if ((Integer.parseInt(number) + 1) == 1) { buffer.append("上一页"); } else { buffer.append("上一页"); } buffer.append(" "); if (maxPage <= (Integer.parseInt(number) + 1)) { buffer.append("下一页"); } else { buffer.append("下一页"); } buffer.append(" "); if (maxPage <= (Integer.parseInt(number) + 1)) { buffer.append("尾页"); } else { buffer.append("尾页"); } String html = buffer.toString(); request.setAttribute("html", html); request.setAttribute(name + "List", objList); }
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)