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

相关推荐
凤山老林14 分钟前
构建多通道通知中心:模板化设计、异步削峰与可靠重试实践
spring boot·异步削峰·模板设计
vipxieliang2 小时前
ValidX 验证器缓存机制:如何提升验证性能
java·spring boot
Thomas.Sir3 小时前
第1课:SpringBoot 4.x 快速上手:新特性、环境准备与第一个HelloWorld程序
java·spring boot
程序员小孔.3 小时前
基于 Spring Cloud + Vue 的 JEEWMS 开源仓储管理平台设计与实现
前端·javascript·vue.js·spring boot·spring cloud·开源
RuoyiOffice4 小时前
SpringBoot+Vue3 业财协同架构:预算、费用分摊、发票、往来与凭证怎样避免五套数字
spring boot·vue3·财务管理·spring boot 3·预算管理·ruoyi office·业财协同
她的男孩4 小时前
页面已发布用户仍进不去:Forge Admin 门户入口与系统菜单挂载解耦
java·spring boot·低代码
专业程序开发源4 小时前
django视听资源推荐系统16690-计算机课程设计、毕业设计
vue.js·spring boot·后端·python·django·php·课程设计
Java爱好狂.13 小时前
Java初学者如何一周速通SpringBoot!
java·spring boot·后端·spring·高并发·架构师·java面试
顽疲18 小时前
java springboot vue 养老系统源码详解:请假 care_leave 销假与床位停费日扣实践
java·vue.js·spring boot
Java_AI工程师18 小时前
Spring4 / SpringBoot1.x 老项目想接入 AI?不用升级框架!3 套无痛落地方案
java·人工智能·spring boot