Что такое JSP-эквивалент json_encode (в PHP)? - PullRequest
9 голосов
/ 08 июля 2010

Я пытаюсь закодировать сервлет JSP в JSON.Что эквивалентно в JSP json_encode () в PHP?

Ответы [ 4 ]

9 голосов
/ 09 июля 2010

JSP / Servlet не такой высокоуровневый, как PHP, который имеет практически «все встроенное». В Java у вас больше свободы выбора из библиотек. В Java есть несколько библиотек JSON, которые вы можете реализовать в своем веб-приложении, популярные из которых находятся под каждым JSON.org , Джексоном и Google Gson .

Мы используем здесь Gson для нашего удовлетворения. Он имеет отличную поддержку параметризованных коллекций и (вложенных) Javabeans. В основном это так просто:

String json = new Gson().toJson(anyObject); // anyObject = List<Bean>, Map<K, Bean>, Bean, String, etc..
response.setContentType("application/json");
response.setCharacterEncoding("UTF-8");
response.getWriter().write(json);

Преобразование JSON в полноценный Javabean также просто с Gson, см. этот пример .

1 голос
/ 06 января 2011

Гсон довольно крутой.

Это почти так же, как json_encode. Обратите внимание, что закодированная пустая строка в json_encode оценивается как "\"\""

В Gson возвращается ""

0 голосов
/ 23 мая 2018

json_encode в php похож на следующий пакет в java

зависимость:

import com.fasterxml.jackson.databind.ObjectMapper;

код:

Map<Object,Object> dataArray = {some data in map}
ObjectMapper objMapper = new ObjectMapper();
String jsonString = objMapper.writeValueAsString(dataArray);

jsonString, если конечный результат, такой как son_encode в php, вы можете получить с помощью класса objectMapper

0 голосов
/ 08 июля 2010

Внизу http://json.org/ приведен список нескольких библиотек Java, которые обрабатывают кодировку JSON.

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