java 415_@RequestBody接受参数报415错误「建议收藏」

java 415_@RequestBody接受参数报415错误「建议收藏」1.简介@RequestBody作用:1)该注解用于读取Request请求的body部分数据,使用系统默认配置的HttpMessageConverter进行解析,然后把相应的数据绑定到要返回的对象上;2)再把HttpMessageConverter返回的对象数据绑定到controller中方法的参数上。使用时机:1)GET、POST方式提时,根据requestheaderConten…

大家好,又见面了,我是你们的朋友全栈君。

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. 加上

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/135785.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • tensorflow_python中文手册

    tensorflow_python中文手册

    2021年6月20日
    99
  • jeesit1.27使用(2)-图片处理

    jeesit1.27使用(2)-图片处理 解决问题:字典使用使用对象:初级开发人员,项目时间紧张没有空钻研源码需要马上学会使用。1.配置表时选择文件上传。 2.生成代码,不敷述了 3.修改form.jsp代码 将type中的files改为images。4.修改list.jsp。…

    2025年6月7日
    0
  • 对Spring的IOC和AOP的理解,可做面试题用「建议收藏」

    对Spring的IOC和AOP的理解,可做面试题用「建议收藏」IOC:控制反转,也叫DI依赖注入,它并不是一种技术实现,而是一种设计思想。在实际项目开发中,我们往往是通过类与类之间的相互协作来完成特定的业务逻辑,这个时候,每个类都要管理与自己有交互的类的引用和依赖,这就使得代码的维护异常困难并且耦合度过高,而IOC的出现正是为了解决这个问题,IOC将类与类的依赖关系写在配置文件中,程序在运行时根据配置文件动态加载依赖的类,降低的类与类之间的耦合度。它的原…

    2022年6月18日
    26
  • dedecms织梦系统_dede模板站

    dedecms织梦系统_dede模板站(dede)织梦系统二次开发记录–soulsjie一、模板常用文件说明模板文件都在文件夹templets下,我们以默认模板(default)为例,对模板文件结构进行分析:首页模板文件目录\

    2022年8月2日
    5
  • 排序之选择排序、堆排序、归并排序、高速排序

    排序之选择排序、堆排序、归并排序、高速排序

    2022年1月24日
    46
  • vscode一键配置C/C++多个C及CPP文件编译与tasks.json和launch.json原理

    vscode一键配置C/C++多个C及CPP文件编译与tasks.json和launch.json原理vscode配置环境及配置原理搜了很多的教程,发现要么教程太老,给的配置信息里面有些参数都不能使用了,要么就是直接扔下自己的配置信息就没了,不知道咋来的,也不能拿过来直接用,让我这种小白无从下手,于是就摸索整理一下,帮助一下像我这样小白刚入手的小伙伴们。原理我觉得最重要的就是我们要明白各个配置文件是干嘛的,它是怎么被vscode使用的,明白这一点,那么自己就可以比较清晰参数该怎么改,应该改哪些参数,而不是拿着别人的配置文件,无从下手。配置文件基本的原理(只是原理,不是咋配置的):vscode使用的最

    2022年10月23日
    0

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号