Установите класс Jackson ObjectMapper, чтобы не использовать научную запись для двойных значений.JAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Установите класс Jackson ObjectMapper, чтобы не использовать научную запись для двойных значений.

Сообщение Anonymous »


Я использую библиотеку com.fasterxml.jackson для JsonSchema.
Я создаю объект IntegerSchema, когда устанавливаю диапазон для целочисленной схемы, используя приведенный ниже код:

Код: Выделить всё

main(){
IntegerSchema intSchema = new IntegerSchema();
// setMaximum accepts Double object
intSchema.setMaximum(new Double(102000000));
// setMaximum accepts Double object
intSchema.setMinimum(new Double(100));

printJsonSchema(intSchema);
}

public void printJsonSchema(JsonSchema schema){
ObjectMapper mapper = new ObjectMapper();
try {
logger.info(mapper.writeValueAsString(schema));
} catch (JsonProcessingException e) {
throw new IllegalStateException(e);
}
}
Когда я конвертирую IntegerSchema в строку с помощью ObjectMapper, получаю ответ ниже:

Код: Выделить всё

{"type":"integer","maximum":1.02E8,"minimum":100.0}
максимальные и минимальные значения преобразуются в экспоненциальное представление.
Но мне нужен вывод в ненаучном представлении, как показано ниже:

Код: Выделить всё

{"type":"integer","maximum":102000000,"minimum":100}
I cannot change IntegerSchema class.
Please suggest how to get the required output without extending IntegerSchema class?
Thanks in advance


Источник: https://stackoverflow.com/questions/377 ... for-double
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

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