JSON-это обычный проходной формат, формат на основе ключей. И размер данных будет относительно небольшим, что позволяет легко пройти. Поэтому JSON часто используется в разработке.
Во -первых, давайте посмотрим на формат JSON:
{key1: value1, key2: value2}Каждая сборка соответствует значению, и каждая пара ключевых значений соединена запятыми. И нет запятой после последней пары ключевых значений, и все необходимо заключить в скобки.
Как правило, когда нормальный сервлет возвращает JSON, он будет выглядеть следующим образом:
response.setContentType ("text/json; charset = utf-8"); response.getwriter ().Это относительно хлопотно и трудно инкапсулировать. Когда новая версия Spring возвращает JSON, вы можете вернуть его прямо через @Responsebody. Это сделано очень хорошо. Общий код выглядит следующим образом:
@Controller @requestMapping ("/json") открытый класс jsonController {@RequestMapping (value = "{provinceId}", method = requestMethod.get) @Responsebody public String Pagination (@pathvarible String Provinceid) {return getJsondata (provinceid); }}Метод доступа выглядит следующим образом: http: // localhost: 8080/spring3/action/json/1. Отнесее отметить, что при доступе к контроллеру Spring MVC A /Действие добавляется в середине. Это связано с тем, что если путь отображения диспетчериста, непосредственно используется /*, соответствующий JSP будет заблокирован, поэтому необходимо добавить префикс, чтобы отличить JSP от контроллера.
Если в JSON есть китайский язык, появится искаженный код, поэтому измените файл конфигурации Spring-servlet.xml и измените MessageConverters of AnnotationMethodHandlerAdapter, поскольку он использует кодирование ISO8895-1 по умолчанию, код выглядит следующим образом.
<Bean> <name = name = "webbindingInitialize1"> <bean/> </property> <name = "messageConverters"> <Sist> <bean> <property name = "Поддержкамедедиатип"> <Siture> <value> text/plain; charset = utf-8 </value> </list> </property> </bean> warset = utf-8 </value> </list> </properate> </bean>
После этих шагов обработка JSON довольно удобна.