为了账号安全,请及时绑定邮箱和手机立即绑定

Spring RestTemplate如何将POJO与application

Spring RestTemplate如何将POJO与application

jeck猫 2019-04-18 14:15:40
当我尝试将POJO与MediaType.APPLICATION_FORM_URLENCODED一起使用时    ExampleRequest exampleRequest = exampleRequest();     exampleRequest.setId("id");     exampleRequest.setName("name");     HttpHeaders headers = new HttpHeaders();     headers.setContentType(MediaType.APPLICATION_FORM_URLENCODED);     HttpEntity<ExampleRequest> exampleRequestEntity = new HttpEntity<>(exampleRequest, headers);     restTemplate.postForObject(url, exampleRequestEntity, String.class)我明白了:org.springframework.web.client.RestClientException: No HttpMessageConverter for [ExampleRequest] and content type  [application/x-www-form-urlencoded]有没有办法用POJO application/x-www-form-urlencoded代替MultiValueMap<String, String> map?
查看完整描述

2 回答

?
临摹微笑

TA贡献1982条经验 获得超2个赞

可以使用FormHttpMessageConverter能够将数据转换MultiValueMap<String, String>application/x-www-form-urlencoded媒体类型所需数据的数据。将以下配置添加到实现WebMvcConfigurer的类中。

@Beanpublic FormHttpMessageConverter formHttpMessageConverter() {

    MediaType mediaType = new MediaType("application", "x-www-form-urlencoded", 
        Charset.forName("UTF-8"))

    FormHttpMessageConverter formHttpMessageConverter= new FormHttpMessageConverter();
    formHttpMessageConverter.setSupportedMediaTypes(Collections.singletonList(mediaType));
    return formHttpMessageConverter;}@Overridepublic void configureMessageConverters(List<HttpMessageConverter<?>> converters) {
     converters.add(formHttpMessageConverter());
     super.configureMessageConverters(converters);}


查看完整回答
反对 回复 2019-05-15
  • 2 回答
  • 0 关注
  • 1109 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号