Spring Boot踩坑

  最近在做毕设,用到了Spring Boot。有个功能用到了分页,百度了一下Spring Boot分页的用法,发现只要在Controller类的方法参数列表里添加一个Pageable类型的参数Spring Boot就会自动拼装请求参数里匹配的参数生成Pageable对象。类似于这样。

    @RequestMapping("/queryTouristAttraction")
    public Message queryTouristAttraction(Pageable pageable,@RequestBody TouristAttractionQueryCondition queryCondition){
        return Message.success(touristAttractionService.queryTourAttraction(pageable,queryCondition));
    }

因为我的项目前后端使用Json交互的,所以我把Pageable的参数也写到相应的Json请求参数里。请求参数的格式如下。

{"queryCondition":{},"pageable":{"page":0,"size":20}}

用这个字符串虽然请求成功了,但是修改参数size为10后发现还是返回20条数据,修改page为1后还是返回第0页的数据。遂DEBUG之。发现参数并未注入pageble对象,后台接收的pageable对象的值都是一个默认值。然后百度,没找到结果。找到stackoverflow上,发现Spring Boot并不支持自动解析并填充Json里面的pageable对象。需要在请求的参数里带。比如使用get方法时这样请求。

localhost:8080/commentController/getCommentPage?page=1&size=5

参数才会被自动注入到方法参数里的pageable对象。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值