Веб-сервисы между Java & c # - сложные типы данных - PullRequest
2 голосов
/ 15 февраля 2012

В настоящее время я работаю над обменом информацией между Java-приложением и .net-приложением с помощью веб-сервисов.Все первичные типы данных (double, int, string, ...) обмениваются правильно.Также простой массив корректно транспортируется.

Однако я пытаюсь перенести HashMap из java в .net (и обратно, хотя я знаю, что .net не имеет HashMap, поэтому я, вероятно, буду использовать словарьили какой-то)Есть идеи, как это сделать?Я знаю, что я мог бы просто использовать массивы, но я бы хотел, если это возможно, лучшее решение.

конкретнее, было бы что-то вроде этого:

@WebMethod 
public HashMap<String, HashMap<String, Double>> 
               foo(@WebParam(name = "bar") String path){...}

1 Ответ

0 голосов
/ 30 июля 2013

Если у вас есть возможность, я бы порекомендовал обмениваться данными в формате JSON. Имеет следующие преимущества

  1. Это менее многословно по сравнению с xml
  2. Проще по пропускной способности сети. Меньше
  3. разбор накладных расходов на стороне клиента.

Однако, если у вашего объекта карты есть круговые ссылки, вам, возможно, придется прыгать через обручи. Взгляните на библиотеку Джексона для преобразования в JSON

...