Установите класс 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}
Я не могу изменить класс IntegerSchema.
Пожалуйста, предложите, как получить требуемый результат без расширения класса IntegerSchema?
Заранее спасибо

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

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

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

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

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

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

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