重生之 SpringBoot3 入门保姆级学习(15、内容协商返回不同数据类型)

重生之 SpringBoot3 入门保姆级学习(15、内容协商返回不同数据类型)

      • [3.3.3 改变 Accept 实现内容协商](#3.3.3 改变 Accept 实现内容协商)
      • [3.3.4 改变 application.proerties 实现内容协商](#3.3.4 改变 application.proerties 实现内容协商)

3.3.3 改变 Accept 实现内容协商


  1. 添加支持写出 xml 内容的 Maven 依赖并刷新 Maven
xml 复制代码
<!--        支持写出 xml 内容依赖-->
<dependency>
    <groupId>com.fasterxml.jackson.dataformat</groupId>
    <artifactId>jackson-dataformat-xml</artifactId>
</dependency>
  1. 在 Person 类中加入 @JacksonXmlRootElement 注解使其可以返回 xml
java 复制代码
package com.zhong.web.dto;

import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlRootElement;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

/**
 * @ClassName : Person
 * @Description :
 * @Author : zhx
 * @Date: 2024-06-02 13:05
 */
@JacksonXmlRootElement // 加入注解使其可以返回 xml
@Data
@AllArgsConstructor
@NoArgsConstructor
public class Person {
    private Integer id;
    private String userName;
    private String like;
    private Integer age;
}
  1. 使用 POSTMAN 工具测试

    https://www.postman.com/downloads/?utm_source=postman-home

  1. 默认 Accept 携带的是 */*
  1. 我们把 Accept 的值修改为 application/xml

3.3.4 改变 application.proerties 实现内容协商


  1. 开启基于请求参数的内容协商功能
yml 复制代码
# 开启基于请求参数的内容协商功能
spring.mvc.contentnegotiation.favor-parameter=true

# 默认访问参数名是 format 这里修改为 type 之后
# 原来的 http://localhost:8080/person?format=json
# 要换成 http://localhost:8080/person?type=xml
#spring.mvc.contentnegotiation.parameter-name=type
  1. 获取 json 类型的数据

    http://localhost:8080/person?format=json

  1. 获取 xml 类型的数据

    http://localhost:8080/person?format=xml

相关推荐
波音彬要多做4 分钟前
41 stack类与queue类
开发语言·数据结构·c++·学习·算法
m0_7482567843 分钟前
WebGIS实战开源项目:智慧机场三维可视化(学习笔记)
笔记·学习·开源
南七澄江2 小时前
各种网站(学习资源及其他)
开发语言·网络·python·深度学习·学习·机器学习·ai
机智的叉烧8 小时前
前沿重器[57] | sigir24:大模型推荐系统的文本ID对齐学习
人工智能·学习·机器学习
量子-Alex9 小时前
【多模态聚类】用于无标记视频自监督学习的多模态聚类网络
学习·音视频·聚类
吉大一菜鸡9 小时前
FPGA学习(基于小梅哥Xilinx FPGA)学习笔记
笔记·学习·fpga开发
爱吃西瓜的小菜鸡11 小时前
【C语言】判断回文
c语言·学习·算法
小A15912 小时前
STM32完全学习——SPI接口的FLASH(DMA模式)
stm32·嵌入式硬件·学习
岁岁岁平安12 小时前
spring学习(spring-DI(字符串或对象引用注入、集合注入)(XML配置))
java·学习·spring·依赖注入·集合注入·基本数据类型注入·引用数据类型注入
武昌库里写JAVA12 小时前
Java成长之路(一)--SpringBoot基础学习--SpringBoot代码测试
java·开发语言·spring boot·学习·课程设计