一、问题描述

使用Springboot JPA 做分页查询,报错Required String parameter 'xx' is not present,后端未接受到请求

二、解决方案:

使用的请求方法是GetMapping,这时候传不了参数,需要改为PostMapping才会有效

错误源码:

注意注解:@GetMapping

 package com.easylab.rentshop.controller;

 import com.easylab.rentshop.base.BaseResource;
import com.easylab.rentshop.service.DepartmentService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.domain.Page;
import org.springframework.web.bind.annotation.*; import java.util.Map; /******************************
* @author : liuyang
* <p>ProjectName:rent-shop </p>
* @ClassName : DepartmentController
* @date : 2018/6/13 0013
* @time : 15:31
* @createTime 2018-06-13 15:31
* @version : 2.0
* @description :
*
*
*
*******************************/ @RestController
@RequestMapping("department")
public class DepartmentController { @Autowired
private DepartmentService departmentService; /**
* @param pageStr
* @param pageSizeStr
* @return Page
* <p>
* <p>
* required和defaultValue设置当请求没有参数的时候,默认设置参数值为1
* 采用String类型接受,防止传入abc这种情况导致程序死掉
*/
@GetMapping("/departmentPage")
public Object departmentPage(@RequestParam(value = "pageStr", required = false, defaultValue = "1") String pageStr,
@RequestParam(value = "pageSizeStr") String pageSizeStr) { int pageNo = 1; try {
pageNo = Integer.valueOf(pageStr); if (pageNo < 1) {
pageNo = 1;
}
} catch (Exception e) {
} int pageSize = 0; try {
pageSize = Integer.valueOf(pageSizeStr); if (pageSize < 1) {
pageSize = 5;
}
} catch (Exception e) {
} Page page = departmentService.getPage(pageNo, pageSize); return new BaseResource(page);
} }

修改后:

 package com.easylab.rentshop.controller;

 import com.easylab.rentshop.base.BaseResource;
import com.easylab.rentshop.service.DepartmentService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.domain.Page;
import org.springframework.web.bind.annotation.*; import java.util.Map; /******************************
* @author : liuyang
* <p>ProjectName:rent-shop </p>
* @ClassName : DepartmentController
* @date : 2018/6/13 0013
* @time : 15:31
* @createTime 2018-06-13 15:31
* @version : 2.0
* @description :
*
*
*
*******************************/ @RestController
@RequestMapping("department")
public class DepartmentController { @Autowired
private DepartmentService departmentService; /**
* @param pageStr
* @param pageSizeStr
* @return Page
* <p>
* <p>
* required和defaultValue设置当请求没有参数的时候,默认设置参数值为1
* 采用String类型接受,防止传入abc这种情况导致程序死掉
*/
@PostMapping("/departmentPage")
public Object departmentPage(@RequestParam(value = "pageStr", required = false, defaultValue = "1") String pageStr,
@RequestParam(value = "pageSizeStr") String pageSizeStr) { int pageNo = 1; try {
pageNo = Integer.valueOf(pageStr); if (pageNo < 1) {
pageNo = 1;
}
} catch (Exception e) {
} int pageSize = 0; try {
pageSize = Integer.valueOf(pageSizeStr); if (pageSize < 1) {
pageSize = 5;
}
} catch (Exception e) {
} Page page = departmentService.getPage(pageNo, pageSize); return new BaseResource(page);
} }

使用PostMan进行接口测试:

Jpa 报错 :HTTP Status 400 - Required String parameter 'xx' is not present的更多相关文章

  1. HTTP Status 400 - Required String parameter 'userName' is not present 错误

    HTTP Status 400 - Required String parameter 'userName' is not present 错误 先mark  有时间详细写 参考链接: https:/ ...

  2. 报错:required string parameter XXX is not present

    报错:required string parameter XXX is not present 不同工具发起的get/delete请求,大多数不支持@RequestParam,只支持@PathVari ...

  3. 后台接收参数报错 Required String parameter 'id' is not present

    来自:https://blog.csdn.net/qq_15238647/article/details/81539287 关于ajax请求spring后台出现 Required String par ...

  4. 400错误,Required String parameter 'paramter' is not present

    1.就拿简单的登录来说吧,这是开始的代码 @RequestMapping(value="/login")public ModelAndView login(@RequestPara ...

  5. required string parameter XXX is not present

    @RequestParam jQuery调用方式: deleteFile: function(filePath) { return ajax({ method: 'POST', url: '/cm/s ...

  6. required string parameter 'XXX'is not present 的几种情况

    required string parameter 'XXX'is not present 的几种情况 情况一:原因是由于头文件类型不对,可以在MediaType中选择合适的类型,例如GET和POST ...

  7. org.springframework.web.bind.MissingServletRequestParameterException: Required String parameter 'xxxx' is not present

    org.springframework.web.bind.MissingServletRequestParameterException: Required String parameter 'xxx ...

  8. Required String parameter 'id' is not present

    问题详情:       简单的说,我就是通过ajax发起了一个post请求到后台,但是后台没有收到请求发过去的参数,并且还报了这样的错误.       错误描述告诉我们,请求参数里面并没有存在id.我 ...

  9. springmvc 传参Required String parameter 'xxxx' is not present

    报错 请求因该是已经被分配了,但是参数补全,无法被执行 加上这个参数就好了,表示请求参数,可以为空 这样的好处是,可以进入controller之后再去判断,比较好定位错误

随机推荐

  1. Qt: 加入打印支持

    写记事本打印功能所遇问题,记录以便于查阅. 在vs系统中开发Qt,加入打印支持,不似在QtCreator之pro文件中中加QT +=printsupport解决. 而要在vs(以vs2015为例)中, ...

  2. 自定义进度条渐变色View

    package com.jianke.stepCounter.Activity; import android.annotation.SuppressLint; import android.cont ...

  3. node.js中对同步,异步,阻塞与非阻塞的理解

    我们都知道javascript是单线程的,node.js是一个基于Chrome V8 引擎的 javascript 运行时环境,注意 node.js 不是一门语言,别搞错了. javascript为什 ...

  4. php新增的一些特性

    php新增的特性,只是略微整理,并不完全. 一.php5.3添加的新特性 1.?:简化的三元运算符 <?php $cur = $cur ? $cur : 1; $cur = $cur ?: 1; ...

  5. Struts2把数据封装到集合中之封装到map中

    struts框架封装数据可以封装到集合中也可以封装到map中,该篇博客主要讲解将数据封装到map中. 1. 封装复杂类型的参数(集合类型 Collection .Map接口等) 2. 需求:页面中有可 ...

  6. prototype.js的Ajax对IE8兼容问题解决方案

    你是否遇到过这样的问题?在使用protype.js的Ajax应用时,会出现这样的问题:只要调用了Ajax.Request,然后点该页面右键,查看“属性”就弹出“IE停止工作”的对话框,然后强制重新加载 ...

  7. 安装scrapy 出现error: Microsoft Visual C++ 14.0 is required. Get it with "Microsoft Visual C++ Build Tools": http://landinghub.visualstudio.com/visual-cpp-build-tools 错误

    安装scrapy 出现以下 错误: error: Microsoft Visual C++ 14.0 is required. Get it with "Microsoft Visual C ...

  8. jquery过滤class为aa的div

    三种方式 $(".aa").filter("div").each(function(){ alert($(this).html()); }); $(" ...

  9. 内置函数 hashlib configparser logging 模块 C/S B/S架构

    1.内置函数 # 内置的方法有很多 # 不一定全都在object中 # class Classes: # def __init__(self,name): # self.name = name # s ...

  10. c# 运行大运算程序主窗体卡掉的解决

    写了一个运算过滤大文本的程序, 其中方法里边使用了多线程,并行线程等方法.  但主窗体控件直接使用此方法时,页面卡顿.所以主线程被堵塞. 代码如下, splitfile 这个方法运行时页面卡顿,阻塞了 ...