Javascript для Java с использованием JSON - PullRequest
2 голосов
/ 25 сентября 2010

Я планирую отправить объект массива Javascript, заполненный данными, кодируя его в JSON.Какие-нибудь хорошие плагины jquery для этого?

Что является стандартным способом синтаксического анализа JSON в массив Java на стороне Java?

Общий поток такой:

  1. Javascript компилирует кучу данных на текущей странице и сохраняет их в массиве.
  2. Объект массива, закодированный в JSON.
  3. Java-код сохраняет JSON.
  4. Повтор и Java-код компилирует последовательные JSON-файлы для каждой страницы.
  5. Java-код представляет одинмега JSON на сервер.

Еще одна проблема, с которой я столкнулся, - 5. Как бы вы поступили с безопасным отправлением больших данных JSON на сервер?

Ответы [ 3 ]

1 голос
/ 25 сентября 2010

На стороне Java вы можете использовать Flexjson для анализа JSON. Он довольно прост в использовании и работает довольно хорошо по сравнению с другими десериализаторами JSON. Кроме того, он десериализует его непосредственно в объекты вашей модели, вместо того, чтобы вам приходилось писать код котла для преобразования между JSONObject / JSONArray в вашу модель данных.

http://flexjson.sourceforge.net

Насколько ваши вопросы о безопасности и "Java-код отправляет один MEGA JSON на сервер" не имеет смысла. Какие варианты использования вы беспокоитесь?

1 голос
/ 25 сентября 2010

На стороне клиента, если вы поддерживаете только современные браузеры, вы можете использовать собственный API-интерфейс JSON.stringify ().В противном случае, библиотека json2.js в порядке.

На стороне сервера есть стадо библиотек, на которое можно посмотреть:

Сначала я указываю на Джексона, во многих случаях он кажется самым быстрым.Тем не менее, мне все труднее разбираться с документацией каждый раз, когда мне нужно вернуться к ней.Json-lib иногда легче понять для небольших задач, которые не требуют максимальной скорости, но все еще с вполне приемлемыми результатами.Gson также имеет хорошую репутацию и очень гибок, однако предыдущие тесты, с которыми я столкнулся, показывали, что он не так хорош, как Джексон.Недавно выпущенная версия 1.5 могла бы улучшить это, но я не знаю.

Она сводится к той степени гибкости, которую вы хотите, производительности, которая вам нужна, и хотите ли вы простой API или если вы не хотитене возражаю против более сложного.

Что касается безопасности, я думаю, что лучшим вариантом здесь будет поддержка SSL для соединений.В противном случае вы могли бы просто усложнить прослушивание, просто используя шифрование на основе JS, но это не защитит вас слишком сильно.Ищите для этого SJCL (криптографическая библиотека Stanford Javascript).

1 голос
/ 25 сентября 2010

Я бы порекомендовал вам использовать json2.js . Приятно то, что если доступен собственный JSON, вы используете его с тем же интерфейсом. json2.js заботится о добавлении функций по условию.

Чтобы отправить данные, выполните:

$.ajax({
    type: 'post',
    data: JSON.stringify(data),
    contentType: 'application/json',
    dataType: 'json'
});

Это также предполагает, что сервер отвечает JSON.

Если вы хотите обеспечить безопасность во время транспортировки, вы можете использовать SSL.

Существует существующий вопрос о синтаксических анализаторах Java JSON. Мне нравится json-simple . Он соответствует своему названию, и JSONObject и JSONArray реализуют Map и List соответственно, что мне кажется полезным.

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