我在Grails应用程序中编辑Floats时出了问题。我将纬度信息存储在我的域类中,并定义了比例:
class Location {
Float latitude
...
static constraints = {
latitude(scale:15)
}
因此我的脚手架视图显示15位精度。但是,我只能在小数点后编辑6位数(如果我改变第7位数,则没有任何反应)。例: 1.原文:12.123456789,编辑:12.123450789 - 工作正常 2.原文:12.123456789,编辑:12.123456089 - 不起作用,存储以前的值
我使用H2 DB进行测试。我认为这是Grails或Gorm的问题,因为值存储在DB中,但Grails无法识别“小”数字更改。任何工作?: - )
答案 0 :(得分:1)
Float
只有大约7个十进制数字的精度,除此之外的一切都是内部binary fraction representation的工件。您可能希望改为使用BigDecimal
。