gpt4 book ai didi

java - Spring MVC。通过 XML 配置文件定义自定义 HttpMessageConverter

转载 作者:行者123 更新时间:2023-11-30 08:28:44 24 4
gpt4 key购买 nike

经过半天的谷歌搜索,我设法在配置类上注册了一个自定义的 HttpMessageConverter。像这样:

@Configuration
public class WebConfig extends WebMvcConfigurationSupport {

@Bean
@Override
public RequestMappingHandlerAdapter requestMappingHandlerAdapter() {
RequestMappingHandlerAdapter handlerAdapter = super.requestMappingHandlerAdapter();
handlerAdapter.getMessageConverters().add(0, new CustomConverter());
return handlerAdapter;
}
}

有没有办法使用 XML 配置文件来做到这一点?

最佳答案

这是 Spring 3.2 的答案:

<mvc:annotation-driven >
<mvc:message-converters register-defaults="false">
<bean class="me.MyCustomMessageConverter"/>
<bean class="org.springframework.http.converter.ByteArrayHttpMessageConverter"/>
<bean class="org.springframework.http.converter.StringHttpMessageConverter">
<property name="writeAcceptCharset" value="false"/>
</bean>
</mvc:message-converters>
</mvc:annotation-driven>

不要忘记定义mvc 命名空间:http://www.springframework.org/schema/mvc/spring-mvc-3.2.xsd

我没有找到,如何在转换器列表的顶部添加自己的转换器。可以使用 register-defaults 属性重新定义转换器堆栈。

标准堆栈在这个 Spring 类 RequestMappingHandlerAdapter 的构造函数中定义。可以从那里复制所需的转换器。

关于java - Spring MVC。通过 XML 配置文件定义自定义 HttpMessageConverter,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20043684/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com