SpringBoot2:请求处理原理分析-利用内容协商功能实现接口的两种数据格式(JSON、XML)

文章目录

一、功能说明

我们知道,用@ResponseBody注解标注的接口,默认返回给页面的是json数据。

其实,也可以返回xml结构的数据给页面。

这一篇就来实现一下这个小功能。

二、案例实现

pom

xml 复制代码
        <dependency>
            <groupId>com.fasterxml.jackson.dataformat</groupId>
            <artifactId>jackson-dataformat-xml</artifactId>
        </dependency>

1、基于请求头实现

直接添加了pom即可,无需其他配置。

获取json数据:application/json

获取xml数据:application/xml

2、基于请求参数实现

yaml配置

yaml 复制代码
spring:
  mvc:
    contentnegotiation:
      favor-parameter: true

获取json数据:http://127.0.0.1:8080/test/person?format=json

获取xml数据:http://127.0.0.1:8080/test/person?format=xml

相关推荐
五阿哥永琪2 小时前
从0开始做一个导出功能,完整流程
spring boot
java1234_小锋3 小时前
SpringBoot可以同时处理多少请求?
java·spring boot·后端
海棠Flower未眠4 小时前
Spring Boot 3 + JPA多模块系统对MySQL和DORIS进行多数据源集成实战(荣耀典藏版)
spring boot·后端·mysql
北风朝向5 小时前
Spring Boot 集成 Open WebUI 实现 AI 流式对话
人工智能·spring boot·状态模式
海棠Flower未眠5 小时前
Spring Boot 2.4后,特定配置文件不能再使用spring.profiles.include的解决思路
数据库·spring boot·spring
C雨后彩虹5 小时前
SpringBoot整合Redis String,全套原生API讲解,覆盖80%缓存业务场景
java·数据结构·spring boot·redis·string
加藤不太惠6 小时前
SpringBoot + MinIO 实现大文件秒传 + 断点续传 + 分片上传
spring boot·后端·minio分片
Devin~Y7 小时前
电商AIGC智能客服面试:JVM调优、Spring Cloud微服务、Redis缓存、Kafka消息、K8s观测与RAG落地
java·jvm·spring boot·redis·spring cloud·kafka·kubernetes
Boop_wu7 小时前
[Java EE 进阶] SpringBoot 统一功能处理全解:拦截器、统一返回、统一异常
java·spring boot·java-ee