商品评价 - 实现分页
生活随笔
收集整理的這篇文章主要介紹了
商品评价 - 实现分页
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
<!--pagehelper -->
<dependency><groupId>com.github.pagehelper</groupId><artifactId>pagehelper-spring-boot-starter</artifactId><version>1.2.12</version>
</dependency>
# 分頁插件配置
pagehelper:helperDialect: mysqlsupportMethodsArguments: true
/*** page: 第幾頁* pageSize: 每頁顯示條數(shù)*/
PageHelper.startPage(page, pageSize);
/*** 根據(jù)商品id查詢商品的評價(分頁)* @param itemId* @param level* @return*/
public PagedGridResult queryPagedComments(String itemId, Integer level,Integer page, Integer pageSize);
private PagedGridResult setterPagedGrid(List<?> list, Integer page) {PageInfo<?> pageList = new PageInfo<>(list);PagedGridResult grid = new PagedGridResult();grid.setPage(page);grid.setRows(list);grid.setTotal(pageList.getPages());grid.setRecords(pageList.getTotal());return grid;
}
package com.leon.utils;import java.util.List;/*** * @Title: PagedGridResult.java* @Package com.leon.utils* @Description: 用來返回分頁Grid的數(shù)據(jù)格式*/
public class PagedGridResult {private int page; // 當前頁數(shù)private int total; // 總頁數(shù) private long records; // 總記錄數(shù)private List<?> rows; // 每行顯示的內(nèi)容public int getPage() {return page;}public void setPage(int page) {this.page = page;}public int getTotal() {return total;}public void setTotal(int total) {this.total = total;}public long getRecords() {return records;}public void setRecords(long records) {this.records = records;}public List<?> getRows() {return rows;}public void setRows(List<?> rows) {this.rows = rows;}
}
@Transactional(propagation = Propagation.SUPPORTS)
@Override
public PagedGridResult queryPagedComments(String itemId,Integer level,Integer page,Integer pageSize) {Map<String, Object> map = new HashMap<>();map.put("itemId", itemId);map.put("level", level);// mybatis-pagehelper/*** page: 第幾頁* pageSize: 每頁顯示條數(shù)*/PageHelper.startPage(page, pageSize);List<ItemCommentVO> list = itemsMapperCustom.queryItemComments(map);for (ItemCommentVO vo : list) {vo.setNickname(DesensitizationUtil.commonDisplay(vo.getNickname()));}return setterPagedGrid(list, page);
}
@ApiOperation(value = "查詢商品評論", notes = "查詢商品評論", httpMethod = "GET")
@GetMapping("/comments")
public JSONResult comments(@ApiParam(name = "itemId", value = "商品id", required = true)@RequestParam String itemId,@ApiParam(name = "level", value = "評價等級", required = false)@RequestParam Integer level,@ApiParam(name = "page", value = "查詢下一頁的第幾頁", required = false)@RequestParam Integer page,@ApiParam(name = "pageSize", value = "分頁的每一頁顯示的條數(shù)", required = false)@RequestParam Integer pageSize) {if (StringUtils.isBlank(itemId)) {return JSONResult.errorMsg(null); }if (page == null) {page = 1;}if (pageSize == null) {pageSize = COMMON_PAGE_SIZE;}PagedGridResult grid = itemService.queryPagedComments(itemId,level,page,pageSize);return JSONResult.ok(grid);
}
@Controller
public class BaseController {public static final Integer COMMON_PAGE_SIZE = 10;public static final Integer PAGE_SIZE = 20;}
public class ItemsController extends BaseController {
@ApiOperation(value = "查詢商品評論", notes = "查詢商品評論", httpMethod = "GET")
@GetMapping("/comments")
public JSONResult comments(@ApiParam(name = "itemId", value = "商品id", required = true)@RequestParam String itemId,@ApiParam(name = "level", value = "評價等級", required = false)@RequestParam Integer level,@ApiParam(name = "page", value = "查詢下一頁的第幾頁", required = false)@RequestParam Integer page,@ApiParam(name = "pageSize", value = "分頁的每一頁顯示的條數(shù)", required = false)@RequestParam Integer pageSize) {if (StringUtils.isBlank(itemId)) {return JSONResult.errorMsg(null);}if (page == null) {page = 1;}if (pageSize == null) {pageSize = COMMON_PAGE_SIZE;}PagedGridResult grid = itemService.queryPagedComments(itemId,level,page,pageSize);return JSONResult.ok(grid);
}
?
總結(jié)
以上是生活随笔為你收集整理的商品评价 - 实现分页的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 开启MyBatis日志Sql打印
- 下一篇: 商品评价 - 信息脱敏