controller中帶有條件的分頁的幾種寫法
controller中帶有條件的分頁的幾種寫法
傳參形式,方式一
@ApiOperation("獲取會員分頁列表")
@GetMapping("/list/{page}/{limit}")
public R listPage(
@ApiParam(value = "當前頁碼", required = true)
@PathVariable Long page,
@ApiParam(value = "每頁記錄數", required = true)
@PathVariable Long limit,
@ApiParam(value = "查詢對象", required = false)
UserInfoQuery userInfoQuery) {
Page<UserInfo> pageParam = new Page<>(page, limit);
IPage<UserInfo> pageModel = userInfoService.listPage(pageParam, userInfoQuery);
return R.ok().data("pageModel", pageModel);
}
實際上是將請求實體類中的參數已?號的形式拼接到了url的后面。
curl -X GET "http://localhost:8110/admin/core/userInfo/list/12/1" -H "Request-Origion:SwaggerBootstrapUi" -H "accept:/" -d "mobile=13623369021" -d "status=1" -d "userType=2"

傳參形式,方式二
@ApiOperation("獲取會員分頁列表")
@GetMapping("/list/{page}/{limit}")
public R listPage(
@ApiParam(value = "當前頁碼", required = true)
@PathVariable Long page,
@ApiParam(value = "每頁記錄數", required = true)
@PathVariable Long limit,
@ApiParam(value = "查詢對象", required = false)
@ResquestBody UserInfoQuery userInfoQuery) {
Page<UserInfo> pageParam = new Page<>(page, limit);
IPage<UserInfo> pageModel = userInfoService.listPage(pageParam, userInfoQuery);
return R.ok().data("pageModel", pageModel);
}

傳參形式,方式三
@ApiOperation("獲取會員分頁列表")
@PostMapping("/list/{page}/{limit}")
public R listPage(
@ApiParam(value = "當前頁碼", required = true)
@PathVariable Long page,
@ApiParam(value = "每頁記錄數", required = true)
@PathVariable Long limit,
@ApiParam(value = "查詢對象", required = false)
@RequestBody UserInfoQuery userInfoQuery) {
Page<UserInfo> pageParam = new Page<>(page, limit);
IPage<UserInfo> pageModel = userInfoService.listPage(pageParam, userInfoQuery);
return R.ok().data("pageModel", pageModel);
}


這種情況中,page和limit走的url中的參數,而實體類走的就是post請求的請求體了。
浙公網安備 33010602011771號