SSM post接口传递json 报错 HTTP状态 415 - 不支持的媒体类型

这篇文章是写给哪些在小破站学习ssm教程的兄弟们,我们都是萌新,大佬就让行吧感谢理解!

本文章主要讲解B站赵伟风SSM教程第108节(JSON数据的接收)

我所有的配置都跟老师一样,老师就很顺利发出去了,我的就是一直415,烦死了!!!
经过我的排查问题出现在 我们的配置类中,我们在上课的时候老是都让我们这样写的:

package org.example.config;import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.EnableWebMvc;
import org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter;
import org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping;@EnableWebMvc
@Configuration
@ComponentScan("org.example.json")public class MVCConfig {@Beanpublic RequestMappingHandlerMapping requestMappingHandlerMapping() {return new RequestMappingHandlerMapping();}@Beanpublic RequestMappingHandlerAdapter requestMappingHandlerAdapter() {return new RequestMappingHandlerAdapter();}
}

问题原因是:

这样写老师没有问题我的就报错了,我滴孩6
为什么呢??
在你手动定义 RequestMappingHandlerAdapter 和 RequestMappingHandlerMapping 时,
默认的 HttpMessageConverter 配置被覆盖或丢失。
默认情况下,Spring 自动配置 RequestMappingHandlerAdapter 并加载 HttpMessageConverter,包括 MappingJackson2HttpMessageConverter,用于处理 JSON 请求。
如果删除手动配置后,Spring 恢复默认行为,因此能够自动解析 application/json,使得 POST 请求可以正确被处理。

说人话就是,你这个不用自己配置 人家spring给你配置好了,你这样一搞,给人家的覆盖了,人家不高兴了,不给你解析Json了jackson来了都不好使!
在这里插入图片描述

解决方案1:更改你的配置文件

这样就可以直接解析了

package org.example.config;import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.EnableWebMvc;@EnableWebMvc
@Configuration
@ComponentScan("org.example.json")
public class MVCConfig {// 这里不需要手动定义 requestMappingHandlerAdapter 和 requestMappingHandlerMapping
}

解决方案2:更改你的配置文件

如果确实需要手动配置 RequestMappingHandlerAdapter,你需要确认其包含 HttpMessageConverter,如 MappingJackson2HttpMessageConverter,以便处理 application/json 格式的请求和响应。

package org.example.config;import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;
import org.springframework.http.converter.json.MappingJackson2HttpMessageConverter;
import org.springframework.web.servlet.config.annotation.EnableWebMvc;
import org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter;@EnableWebMvc
@Configuration
@ComponentScan("org.example.json")
public class MVCConfig {@Beanpublic RequestMappingHandlerAdapter requestMappingHandlerAdapter() {RequestMappingHandlerAdapter adapter = new RequestMappingHandlerAdapter();adapter.getMessageConverters().add(new MappingJackson2HttpMessageConverter());return adapter;}}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/886574.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

《Python编程实训快速上手》第七天--文件与文件路径

该章节将使用Python在硬盘上创建、读取和保存文件 一、文件与文件路径 1、Windows中使用\以及macOS和Linux中使用/ 使用pathlib模块中的Path()函数进行文件名和目录的拼接,返回文件路径字符串 from pathlib import Path print(Path("spam","bacon",&qu…

JAVA接口代码示例

public class VehicleExample {// 定义接口public interface Vehicle {void start(); // 启动车辆void stop(); // 停止车辆void status();// 检查车辆状态}public interface InnerVehicleExample {void student();}// 实现接口的类:Carpublic static class Car imp…

StarRocks 架构

StarRocks 是什么?( What is StarRocks?) StarRocks 是 MPP 的查询引擎,用来做实时查询,提供亚秒级的查询性能。 兼容 MYSQL 协议,可以和大部分 BI 工具进行无缝衔接。 Apache 2.0 开源产品。 使用场景&…

A038-基于SpringBoot的乡村养老服务管理系统登录

🙊作者简介:在校研究生,拥有计算机专业的研究生开发团队,分享技术代码帮助学生学习,独立完成自己的网站项目。 代码可以查看文章末尾⬇️联系方式获取,记得注明来意哦~🌹 赠送计算机毕业设计600…

WPF应用程序的生命周期-笔记

应用程序的生命周期 窗体的生命周期: window是一个控件 window中的事件:从window创建到关闭我们称之为窗体的生命周期 每一个窗体的生命周期都是独立的,窗体与窗体之间的生命周期都是独立的 最早加载的事件 控件的事件触发 基本所有的控件都继承与Framework 在WPF中基本所有的…

H.265流媒体播放器EasyPlayer.js视频流媒体播放器关于直播流播放完毕是否能监听到

EasyPlayer属于一款高效、精炼、稳定且免费的流媒体播放器,可支持多种流媒体协议播放,无须安装任何插件,起播快、延迟低、兼容性强,使用非常便捷。 EasyPlayer.js播放器不仅支持H.264与H.265视频编码格式,也能支持WebS…

速盾:CDN服务器和双线服务器哪个更好?

在当今互联网发展迅猛的时代,网站的访问速度成为了用户体验的重要因素之一。为了提高网站的访问速度和稳定性,许多网站管理员会选择使用CDN服务器或双线服务器。那么,CDN服务器和双线服务器哪个更好呢?让我们来进行一番比较。 首…

智能停车解决方案之停车场室内导航系统(二):核心技术与系统架构构建

hello~这里是维小帮,如有项目需求和技术交流欢迎大家私聊我们!点击文章最下方获取智慧停车场方案~撒花! 随着城市化进程的加速,停车难问题日益凸显。智能停车系统作为缓解停车压力的有效手段,其核心技术与架构的构建至…

美赛优秀论文阅读--2023C题

文章目录 1.题目说明2.我对于这个题目信息的理解3.优秀论文学习3.1摘要3.2相关的算法模型 4.总结 1.题目说明 今天阅读的这个文章来自于这个2023年的这个美赛的这个C题的论文; 我们的这个题目可以到网上去找,这个还是比较容易找到的,大致就…

无人机飞手入门指南

无人机飞手入门指南旨在为初学者提供一份全面的学习路径和实践建议,帮助新手快速掌握无人机飞行技能并了解相关法规知识。以下是一份详细的入门指南: 一、了解无人机基础知识 1. 无人机构造:了解无人机的组成部分,如机身、螺旋桨…

【JavaEE初阶 — 多线程】定时器的应用及模拟实现

目录 1. 标准库中的定时器 1.1 Timer 的定义 1.2 Timer 的原理 1.3 Timer 的使用 1.4 Timer 的弊端 1.5 ScheduledExecutorService 2. 模拟实现定时器 2.1 实现定时器的步骤 2.1.1 定义类描述任务 定义类描述任务 第一种定义方法 …

AIGC----生成对抗网络(GAN)如何推动AIGC的发展

AIGC: 生成对抗网络(GAN)如何推动AIGC的发展 前言 随着人工智能领域的迅猛发展,AI生成内容(AIGC,AI Generated Content)正成为创意产业和技术领域的重要组成部分。在AIGC的核心技术中,生成对抗网络(GAN&am…

基于css的Grid布局和vue实现点击左移右移轮播过渡动画效果

直接上代码&#xff0c;以下代码基于vue2,需要Vue3或者react可以使用国内直连GPT/Claude来帮你转换下 代码如下&#xff1a; // ScrollCardsGrid.vue <template><div class"scroll-cards-container"><!-- 左箭头 --><div v-show"showLef…

Springboot如何打包部署服务器

文章目的&#xff1a;java项目打包成jar包或war包&#xff0c; 放在服务器上去运行 一、编写打包配置 1. pom.xml 在项目中的pom.xml文件里面修改<build>...</build>的代码 >> 简单打包成Jar形式&#xff0c;参考示例&#xff1a; <build><fina…

HTML、CSS与JavaScript基础

HTML&#xff1a;网页的骨架 互联网起源与HTML概述 互联网起源于1960年代的美国&#xff0c;HTML&#xff08;HyperText Markup Language&#xff09;作为构建网页的标准语言&#xff0c;自1990年代起便成为互联网信息展示的基石。 HTML文档结构 一个标准的HTML文档包含<…

实现了两种不同的图像处理和物体检测方法

这段代码实现了两种不同的图像处理和物体检测方法&#xff1a;一种是基于Canny边缘检测与轮廓分析的方法&#xff0c;另一种是使用TensorFlow加载预训练SSD&#xff08;Single Shot Multibox Detector&#xff09;模型进行物体检测。 1. Canny边缘检测与轮廓分析&#xff1a; …

Git 修改用户名(user.name)和用户邮件地址(user.email)的方法和作用

文章目录 修改方法修改作用 修改方法 首先&#xff0c;需要在本地计算机上打开Git Bash&#xff0c;然后确定你是只需要修改当前Git仓库的用户名和用户邮件地址&#xff0c;还是计算机上所有Git仓库的用户名和用户邮件地址。 对于只修改当前Git仓库的用户名和用户邮件地址的情…

RabbitMQ-死信队列(golang)

1、概念 死信&#xff08;Dead Letter&#xff09;&#xff0c;字面上可以理解为未被消费者成功消费的信息&#xff0c;正常来说&#xff0c;生产者将消息放入到队列中&#xff0c;消费者从队列获取消息&#xff0c;并进行处理&#xff0c;但是由于某种原因&#xff0c;队列中的…

ALSA - (高级Linux声音架构)是什么?

ALSA是Linux声音系统的核心组件&#xff0c;让用户可以精细控制声音硬件和声音进出。它通过抽象层屏蔽了硬件复杂性&#xff0c;使开发者能够专注于功能实现。这篇文章将逐步解析ALSA的基础知识&#xff0c;包括其运作原理、应用场景&#xff0c;以及如何完成一个基本配置和使用…

Ceph层次架构分析

Ceph的层次结构可以从逻辑上自下向上分为以下几个层次&#xff1a; 一、基础存储系统RADOS层 功能&#xff1a;RADOS&#xff08;Reliable Autonomic Distributed Object Store&#xff09;是Ceph的底层存储系统&#xff0c;提供了分布式存储的核心功能。它是一个完整的对象存…