Grails float编辑和精度

时间:2012-10-21 11:27:47

标签: grails gorm

我在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无法识别“小”数字更改。任何工作?: - )

1 个答案:

答案 0 :(得分:1)

Float只有大约7个十进制数字的精度,除此之外的一切都是内部binary fraction representation的工件。您可能希望改为使用BigDecimal