GSON: преобразование json в объект java с картами в виде полей

У меня есть такой JSON:

String json = 
  "{\n" + 
  "\tfeeType: [{2:\"SALESCOMM_GST\"},{3:\"SALESCOMM\"}],\n" +
  "\tfeeBasis: [{0:\"AMOUNT\"},{1:\"CPS\"},{2:\"PERCENT\"}]\n" +
  "}"

Я хочу преобразовать в такой объект java.

private class MyObj{
        public Map<Integer, String> feeType;
        public Map<Integer, String> feeBasis;

        public Map<Integer, String> getFeeType() {
            return feeType;
        }

        public void setFeeType(Map<Integer, String> feeType) {
            this.feeType = feeType;
        }

        public Map<Integer, String> getFeeBasis() {
            return feeBasis;
        }

        public void setFeeBasis(Map<Integer, String> feeBasis) {
            this.feeBasis = feeBasis;
        }
    }

Я пробовал использовать gsonBuilder.enableComplexMapKeySerialization, но, похоже, это не работает. Пожалуйста помоги.

РЕДАКТИРОВАТЬ Получено одобрение на реализацию другим способом. (Использование карт вместо списков)

новый JSON:

String json = 
  "{\n" + 
  "\t\"feeType\": {2:\"SALESCOMM_GST\",3:\"SALESCOMM\"},\n" + 
  "\t\"feeBasis\": {0:\"AMOUNT\",1:\"CPS\",2:\"PERCENT\"}\n" + 
  "}"
feeType и feeBasis - это не карта, а массив
Maxim Shoustin 04.04.2018 09:56

@MaximShoustin Да, мое требование - хранить их как карту.

Ashish Lohia 04.04.2018 10:29

Получено одобрение на реализацию другим способом. Спасибо.

Ashish Lohia 04.04.2018 10:39

новый JSON: "{\ n" + "\ t \" feeType \ ": {2: \" SALESCOMM_GST \ ", 3: \" SALESCOMM \ "}, \ n" + "\ t \" feeBasis \ ": { 0: \ "СУММА \", 1: \ "CPS \", 2: \ "ПРОЦЕНТ \"} \ n "+"} "

Ashish Lohia 04.04.2018 10:44

Итак, вам удалось разобраться сейчас? Это должно быть прямое преобразование.

Bentaye 04.04.2018 14:13

да, спасибо.

Ashish Lohia 10.04.2018 05:28
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
0
6
69
0

Другие вопросы по теме