BigDecimal сериализация в GWT
-
22-07-2019 - |
Вопрос
Как вы предпочитаете сериализовать BigDecimal в GWT?
Есть ли какие-нибудь хитрые обходные пути, или вы просто используете Double или String?
Из всех болей GWT это пока самая большая; Я не хотел бы создавать две модели, одну для сервера и одну для GWT, и преобразовывать данные из одной в другую. С другой стороны, хотя меня не волнует использование String вместо, скажем, javax.xml.datatype.Duration, мне приходится использовать BigDecimal на сервере из-за вычислений, что означает либо две модели и преобразование, либо тонны крошечных преобразований в BigDecimal для каждого вычисления.
Решение
Вот реализация пакета GWT java.math, которую я построил:
http://code.google.com/p/gwt-java-math / р>
Он основан на реализации Apache Harmony, но был изменен для запуска эффективно в Java Script, используя двойные, а не длинные.
Он включает в себя почти полную реализацию BigInteger, BigDecimal, MathContext, RoundingMode и Random.
Другие советы
Начиная с GWT 2.1 поддерживается java.math.BigDecimal.
заметки о выпуске
Чтобы ответить на мой собственный вопрос, я только что нашел проект gwt-math , который добавляет поддержку BigDecimal и решает мою проблему ...
Кроме того, здесь официальный запрос поддержки BigDecimal в GWT.