Веб-сервисы между Java и c # - сложные типы данных

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

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

более конкретно, это будет примерно так:

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

person user1211204    schedule 15.02.2012    source источник
comment
Это может помочь - stackoverflow.com/questions/4654423/.   -  person Perception    schedule 15.02.2012


Ответы (1)


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

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

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

person JVXR    schedule 30.07.2013