1.简介

@RequestBody

作用:

1) 该注解用于读取Request请求的body部分数据,使用系统默认配置的HttpMessageConverter进行解析,然后把相应的数据绑定到要返回的对象上;

2) 再把HttpMessageConverter返回的对象数据绑定到 controller中方法的参数上。

使用时机:

1) GET、POST方式提时, 根据request header Content-Type的值来判断:

A.application/x-www-form-urlencoded, 可选(即非必须,因为这种情况的数据@RequestParam, @ModelAttribute也可以处理,当然@RequestBody也能处理);

B.multipart/form-data, 不能处理(即使用@RequestBody不能处理这种格式的数据);

C.其他格式, 必须(其他格式包括application/json, application/xml等。这些格式的数据,必须使用@RequestBody来处理);

2) PUT方式提交时, 根据request header Content-Type的值来判断:

A.application/x-www-form-urlencoded, 必须;

B.multipart/form-data, 不能处理;

C.其他格式, 必须;

说明:

request的body部分的数据编码格式由header部分的Content-Type指定;

requestBody接收的是JSON对象的字符串,AJAX传递数据使用的是JSON,所以需要使用JSON.stringify()转化为JSON字符串,从而被requestBody接收。

@ResponseBody

作用:

该注解用于将Controller的方法返回的对象,通过适当的HttpMessageConverter转换为指定格式后,写入到Response对象的body数据区。

使用时机:

返回的数据不是html标签的页面,而是其他某种格式的数据时(如json、xml等)使用;

2.Spring MVC的配置文件

增加配置

3.需要的jar包

在Maven中增加依赖

Spring-webmvc 和  jsckson-mapper-asl

注:在jsp中使用ajax提交时出现了下面的问题: 415 (Unsupported Media Type), 可能出现的原因如下:

1. dataParam 格式错误,不符合json字符串规范

2. dataParam 参数不能绑定到控制器方法的参数上面,不是一一对应

3. 没有在ajax提交时设置contentType

contentType指的是前台传递到后台的格式,dataType指的是由后台传到前台的格式

4. jackson的jar包不对或者不全:

不应该使用org.codehaus.jackson下面的jackson.jar, 应该使用com.fasterxml.jackson.core下面的jackson-core和jackson-databind 的jar包

5. 加上

java 415_@RequestBody接受参数报415错误相关推荐

  1. android post请求时报415错误,解决微信小程序用 SpringMVC 处理http post时请求报415错误...

    解决微信小程序用 SpringMVC 处理http post时请求返回415错误 写微信小程序时遇到的问题,这个坑硬是让我整了半天 wx.request请求跟ajax相似处理方法一致javascrip ...

  2. java http 415错误_SpringMVC ajax提交json报415错误

    具体报错信息如下HTTP Status 415 - type Status report message description The server refused this request bec ...

  3. Java 前端传后台出现405,415错误的解决方法

    前端传后台出现405,415错误 原因:参数没有序列化就传到后台,后台不认识构造,需要对前端数据包装. form = {name: "sennpai",age: 24,job: & ...

  4. 发json请求,报415错误。POST http://localhost:8080/ 415

    在编写ajax发送json时报415错误,先分析415的原因. 415:服务器无法处理请求附带的媒体格式.意思为没有解析成功你的json格式的数据. 我个人出现的原因:使用maven导入jackson ...

  5. springMVC浏览器接受json报406错误的解决方法

    2019独角兽企业重金招聘Python工程师标准>>> 这个错误还真难搞,头一次遇见还真没有什么好办法解决,上网找了很多资料,一一试过也不能很好的解决,最后经过朋友,同事一起努力,终 ...

  6. easyui 传递参数报错(错误:uncaught SyntaxError: Unexpected identifier)

    转自:https://www.cnblogs.com/javaboy2018/p/8733585.html 代码: 按钮事件: function formatOper(val, row, index) ...

  7. java mail 503_邮件配置报503错误,发送失败

    $row 不是数组 你这个版本应该不是最新版,试着后台打印一下$row的值 这个最新版本的代码/** * 发送测试邮件 * @internal */ public function emailtest ...

  8. ajax请求415错误

    1.ajax请求服务器报415错误多半是ajax的请求格式不对,服务器不支持此媒体类型, 那么,此时你首先小检查自己的ajax的格式是否正确,在就是传递的参数类型是否是正确的(传递给服务器的参数也要根 ...

  9. postmain报400_Postman测试@RequestBody发送请求时报400错误

    postman测试@requestbody时碰到400错误 图1 原因: 传参数如果不使用@RequestBody,在使用Postman进行Post请求时,通常做法是填入key和value的值即可. ...

  10. SpringMVC过程中@RequestBody接收Json的问题 总是报415

    在SpringMVC中用@RequestBody接收Json的问题,总是报415,经过一翻查找 前台js的post: var postdata = '{"title":" ...

最新文章

  1. TensorFlow实战笔记(17)---TFlearn
  2. CBAC ftp测试
  3. java8-06-自定义Collector-JoinCollector
  4. python 安装serial模块
  5. python面向窗体的开发_Python高级进阶#019 pyqt5菜单menu应用,新建多窗体
  6. java bitset_Java BitSet intersects()方法与示例
  7. HDU 3861 The King’s Problem (强连通缩点+DAG最小路径覆盖)
  8. Docker学习总结(60)——Docker-Compose 基础知识回顾总结
  9. 项目解析jsx文件_神奇了!这个 Go 语言项目让前端构建快了近 100 倍
  10. java中的this.id_Java this关键字
  11. MATLAB——SRTM DEM显示
  12. EDR BYPASS
  13. Maven基础篇之Maven实战入门-最新IDEA版maven
  14. android 强制更新用断点下载,Android断点下载小结
  15. Pyqt QThread
  16. Linux网络参数DD,linux tcpdump命令参数及用法详解--linux下抓包网络分析
  17. Java架构师面试十大连环炮
  18. 无限循环病毒HTML,红包群无限循环病毒式裂变引流
  19. 总结:Flink之Event Time , Processing Time 和 Ingestion Time
  20. 查看Android应用内存的方法,Android获取App内存使用情况的方法

热门文章

  1. ARM Linux 系统设置开机自启动一个程序
  2. 8 - 博客文章详情页
  3. Mac 快速打开终端快捷键
  4. 晒下自己App广告平台积分墙收入,顺便点评几个广告平台
  5. [Node.js] rsaaes 加密解密
  6. linux限制syslog大小,c – 如何限制syslog管理的日志文件的总大小?
  7. 图片alt属性添加方法
  8. 传奇服务器端地图链接在哪个文件夹,传奇客户端有新地图,怎样在服务端设置链接?让玩家进去?...
  9. 中兴新支点操作系统_中兴新支点操作系统v3.2.2 最新版
  10. 开发者选项看html,手机怎么打开开发者选项?开发者模式开启方法