struts1的<bean:write />标签输出bigdeclmal类型精度丢失
最近在升级项目的时候碰到一个问题:form里定义了一个bigdecimal类型的数据(有20位),debug跟踪发现,从数据库查出以及设置到form内值均正常,但是当值传到页面的时候后几位数值发生了变化(大概后4位,变小了),页面是用<bean:write />标签输出的。
该问题出现在老版本的框架下,同样的程序在新版本的框架下bigdecimal数据显示是正常的。我猜测是新版本的框架哪里做了设置,但是研究了半天就是找不出来哪里设置的。请各位提醒指导,感激涕零。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
利用 bean:write 的format属性,加上一个format="#" 属性
bean:write name="testForm" property="testBig" format="#" /BigDecimal型数据处理
bean:write name="testForm" property="testInt" format="#" /Intger型数据处理
关于 format还有不少很好的妙用
比如你要显示的日期格式为 年-月-日 时:分:秒,则可以定义为 format="yyyy-MM-dd HH:mm:ss"
比如你要定义显示到小数点后几位,则可以定义为 format="000.00"