закомментируйте JSON перед отправкой клиенту - PullRequest
0 голосов
/ 05 декабря 2010

в контроллере пружины 3

@RequestMapping(value = "/employee/{id}", RequestMethod.GET)
public @ResponseBody Employee getEmployee(@PathVariable long empID) {
    Employee employee = employeeService.getByID(empID);
    return employee;
}

, какой файл я должен изменить, чтобы json возвращался, как показано ниже

вместо возврата "['foo', 'bar']"

, верните это"/*['foo', 'bar']*/" (с комментарием)?

Ответы [ 2 ]

1 голос
/ 07 декабря 2010

Краткое примечание к комментариям: комментарии не являются (увы!) Частью спецификации JSON, поэтому их использование означает использование нестандартного JSON.

Для чего бы то ни было, можно заставить некоторые парсеры JSON (включая Джексона) обрабатывать комментарии (для Джексона см. http://wiki.fasterxml.com/JacksonFeaturesParser);, а также записывать их (необходимо использовать 'JsonGenerator.writeRaw ("/ *) 1005 * ... / ") ').

Но, возможно, у Spring есть способ украсить ответ, поскольку это, вероятно, будет проще реализовать.

1 голос
/ 05 декабря 2010

Под крышками Spring MVC делегирует HttpMessageConverter для выполнения сериализации.В этом случае Spring MVC вызывает MappingJacksonHttpMessageConverter, построенный на процессоре Джексона JSON .Эта реализация включается автоматически, когда вы используете элемент конфигурации mvc: annotation-based с Джексоном, присутствующим в вашем пути к классам.

Итак, вы можете предоставить свой собственный HttpMessageConverter реализация путем переопределения

protected void writeInternal(Object o,
                         HttpOutputMessage outputMessage)
                  throws IOException,
                         HttpMessageNotWritableException

метод MappingJacksonHttpMessageConverter , который мог бы обслуживать цель.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...