2013-06-11 4 views
1

Когда я прохожу тип объекта Строки вызова остальных служб Строка «ответ» содержит JSon представление отдыха URLRestTemplate возвращаемых типов

RestTemplate restTemplate = new RestTemplate(); 
String response = restTemplate.getForObject("xxxxx", String.class, new Object[]{}); 

Если я изменяю выше коды:

RestTemplate restTemplate = new RestTemplate(); 
MyObject response = restTemplate.getForObject("xxxxx", MyObject.class, new Object[]{}); 

Тип ответа теперь MyObject.

Что здесь происходит, это преобразование RestTemplate в Json, когда указан тип строки и преобразование в объект, указанный при указании типа возвращаемого объекта?

ответ

3

Да. В основном, RestTemplate делает вызов URL, указанного в первом аргументе. Вызов возвращает ответ в виде json. Затем он использует MyObject.class и HttpMessageConverter для преобразования json в объект.

Он использует зарегистрированный HttpMessageConverters для преобразования, поэтому ваше приложение должно иметь MappingJacksonHttpMessageConverter, зарегистрированное в вашей заявке.

+0

Я не могу найти ссылку на MappingJacksonHttpMessageConverter в моем приложении, является ли это стандартным типом преобразования? –

+1

да .. 'MappingJacksonHttpConverter' добавляется по умолчанию. Прочитайте [this] (http://blog.springsource.org/2009/03/27/rest-in-spring-3-resttemplate/) сообщение в блоге на springsource –

Смежные вопросы