Java 我应该如何在Spring boot中配置httpMessageConverters以将消息转换为所需格式?

Java 我应该如何在Spring boot中配置httpMessageConverters以将消息转换为所需格式?,java,json,spring,spring-boot,protocol-buffers,Java,Json,Spring,Spring Boot,Protocol Buffers,我使用springboot编写了一个api服务,它以googleprotobuf格式为请求提供服务。我的要求是,每当用户使用accept header作为application json format点击我的服务时,我希望使用proto buf java format(用于将json字符串与proto对象进行转换的库)将呈现的proto对象转换为json格式。现在发生的事情是,每当用户点击application/x-protobuf格式时,spring使用protobufHTTPMessageC

我使用
springboot
编写了一个api服务,它以
googleprotobuf
格式为请求提供服务。我的要求是,每当用户使用accept header作为
application json format
点击我的服务时,我希望使用
proto buf java format
(用于将
json
字符串与proto对象进行转换的库)将呈现的proto对象转换为
json
格式。现在发生的事情是,每当用户点击
application/x-protobuf
格式时,spring使用
protobufHTTPMessageConverter
转换为所需格式,但当用户点击Json格式时,spring boot使用默认的
jacksonapper
,无法转换为
JsonString
。我不熟悉
springboot
,我需要配置消息转换器以服务
JSON
格式的解决方案

尝试在下面添加类。假设您保持AutoScan打开,SpringBoot应该扫描它。在请求API时,它将返回默认情况下序列化为JSON的对象,或者只向请求添加&mediaType=JSON

@EnableWebMvc
@Configuration
public class CustomConfig extends WebMvcConfigurerAdapter
{
    @Override
    public void configureMessageConverters(List<HttpMessageConverter<?>> converters)
    {
        MappingJackson2HttpMessageConverter mappingJackson2HttpMessageConverter = new MappingJackson2HttpMessageConverter();
        mappingJackson2HttpMessageConverter.setPrettyPrint(true);
        mappingJackson2HttpMessageConverter.getObjectMapper().setSerializationInclusion(JsonInclude.Include.NON_EMPTY);
        converters.add(mappingJackson2HttpMessageConverter);
    }

    @Override
    public void configureContentNegotiation(ContentNegotiationConfigurer configurer)
    {
        configurer.defaultContentType(MediaType.APPLICATION_JSON);
        configurer.favorPathExtension(false);
        configurer.favorParameter(true);
        configurer.ignoreAcceptHeader(true);
        configurer.useJaf(false);
        configurer.parameterName("mediaType");
        configurer.mediaType("json", MediaType.APPLICATION_JSON);
    }
}
@EnableWebMvc
@配置
公共类CustomConfig扩展WebMVCConfigureAdapter
{
@凌驾

公共无效配置MessageConverters(列表)您是否尝试复制一些基本教程,例如?如果您遇到问题,请提供一些代码、运行时错误消息…谢谢我忘记在pom.xml中添加Protobuf Java格式的依赖项。您是否知道维护此库的人员。此库是否适合用于将protos转换为Json。您将找到此libr所有者的姓名和电子邮件在您链接的页面的底部显示。