Jackson ObjectMapper - укажите порядок сериализации свойств объектаJAVA

Программисты JAVA общаются здесь
Anonymous
Jackson ObjectMapper - укажите порядок сериализации свойств объекта

Сообщение Anonymous »

Я внедряю веб -сервис Restful, где пользователь должен отправить подписанный токен проверки вместе с запросом, чтобы я мог убедиться, что запрос не был подделан средним человеком. Моя текущая реализация заключается в следующем.class VerifData {
int prop1;
int prop2;
}
< /code>

В моей службе я помещаю данные для сериализации в экземпляр Verifdata, а затем сериализую их с помощью Jackson ObjectMapper и передается в двигатель проверки вместе с токеном проверки. < /p>

VerfiData verifData = new VerifData(12345, 67890);
ObjectMapper mapper = new ObjectMapper();
String verifCodeGenerated = mapper.writeValueAsString(verifData);
< /code>

Но кажется, что каждый раз, когда начинается контейнер приложения, порядок свойств отображается в строку по изменениям объекта.{"prop1":12345,"prop2":67890}
< /code>

И в другой раз это будет < /p>

{"prop2":67890,"prop1":12345}
< /code>

Итак, если клиент сериализовал экземпляр Verifdata, как в первой строке, есть 50% вероятность того, что он не удастся, даже если он правильный. < /p>

Есть ли способ обойти это? Могу ли я указать порядок свойств на карту с помощью ObjectMapper (например, в порядке возрастания)? Или есть другой способ лучше всего реализовать этот шаг проверки. Реализации клиента и сервера разрабатываются мной. Я использую Java Security API для подписания и проверки.

Подробнее здесь: https://stackoverflow.com/questions/275 ... properties

Вернуться в «JAVA»