springboot @RequestBody 接收字符串实例

 更新时间:2021年10月22日 14:28:52   作者:sayyy  
这篇文章主要介绍了springboot @RequestBody 接收字符串实例,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

springboot @RequestBody 接收字符串

  • springboot 2.1.1.RELEASE

@RequestBody 接收字符串

    @RequestMapping(method = {RequestMethod.POST})
    public ResultEntity form1(@RequestBody String requestBody) throws UnsupportedEncodingException {
  logger.info("================ request body ================");\
  logger.info("request body is : {}", requestBody);
 }

向接口传送 application/json 格式的数据

客户端调用代码如下:

$.ajax({
    url:'http://localhost/api/spd',
    data: JSON.stringify({name:'zhangsan', age: 18}),
    type:'POST',
    contentType: 'application/json',
    success:function(result){
        console.log(result);
    },
    error:function(error){
     console.log(error);
    }
});

服务端执行结果:

00:11:55.972 [http-nio-8020-exec-5] INFO c.c.api.SpdApi - [form1,45] - request body is : {"name":"zhangsan","age":18}

向接口传送 text/plain 格式的数据

客户端调用代码如下:

$.ajax({
    url:'http://localhost/api/spd',
    data: 'this is a message',
    type:'POST',
    contentType: 'text/plain',
    success:function(result){
        console.log(result);
    },
    error:function(error){
     console.log(error);
    }
});

服务端执行结果:

23:46:04.953 [http-nio-8020-exec-1] INFO c.c.api.SpdApi - [form1,45] - request body is : 'this is a message'

替代 @RequestBody 的办法

如果不想用 @RequestBody ,可以使用下面的方法:

 protected String getRequestBody(HttpServletRequest request) {
  try {
   BufferedReader reader = request.getReader();
   char[] buf = new char[512];
   int len = 0;
   StringBuffer contentBuffer = new StringBuffer();
   while ((len = reader.read(buf)) != -1) {
    contentBuffer.append(buf, 0, len);
   }
   return contentBuffer.toString();
  } catch (IOException e) {
   e.printStackTrace();
  }  
  return "null";
 }

@RequestBody接收前端传来的json值为空

这个真的很脑抽。。。

我忘了在函数接收处写@RequestBody,至于其他博主说需要在BO包中加@JsonProperty(value = "xxx"),

或者什么驼峰命名法,也许是版本原因,没有这个必要,emmm,检查自己的函数接收参数叭

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • springboot + jpa实现删除数据的操作代码

    springboot + jpa实现删除数据的操作代码

    这篇文章主要介绍了springboot + jpa实现删除数据的操作代码,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧
    2024-05-05
  • java的基本数据类型及属性

    java的基本数据类型及属性

    java的基本数据类型及属性,需要的朋友可以可以参考一下
    2013-03-03
  • JpaRepository如何实现增删改查并进行单元测试

    JpaRepository如何实现增删改查并进行单元测试

    这篇文章主要介绍了JpaRepository如何实现增删改查并进行单元测试,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-11-11
  • Spring中使用LocalDateTime、LocalDate等参数作为入参

    Spring中使用LocalDateTime、LocalDate等参数作为入参

    这篇文章主要介绍了Spring中使用LocalDateTime、LocalDate等参数作为入参,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-12-12
  • 理解java多线程中ExecutorService使用

    理解java多线程中ExecutorService使用

    这篇文章主要帮助大家理解java多线程中ExcetorServiced的使用方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-12-12
  • 解决@FeignClient注入service失败问题

    解决@FeignClient注入service失败问题

    这篇文章主要介绍了解决@FeignClient注入service失败问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-03-03
  • 关于泛型擦除问题的解决--Mybatis查询类型转换

    关于泛型擦除问题的解决--Mybatis查询类型转换

    这篇文章主要介绍了关于泛型擦除问题的解决--Mybatis查询类型转换方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-08-08
  • java版十大排序经典算法:完整代码(2)

    java版十大排序经典算法:完整代码(2)

    优秀的文章也不少,但是Java完整版的好像不多,我把所有的写一遍巩固下,同时也真诚的希望阅读到这篇文章的小伙伴们可以自己去从头敲一遍,不要粘贴复制!希望我的文章对你有所帮助,每天进步一点点
    2021-07-07
  • java中for循环执行的顺序图文详析

    java中for循环执行的顺序图文详析

    关于java的for循环想必大家非常熟悉,它是java常用的语句之一,这篇文章主要给大家介绍了关于java中for循环执行顺序的相关资料,需要的朋友可以参考下
    2021-06-06
  • java中Callback简单使用总结

    java中Callback简单使用总结

    正好学习到java Callback,就整理了一下,希望整理的文章内容对大家有所帮助
    2017-04-04

最新评论