从数据库中获取大值

时间:2014-06-18 07:23:13

标签: java mysql

对不起这个noob问题,但我真的不知道要搜索什么以及如何解决它。我有一个像这样的表结构:

enter image description here

这只是我桌子的一部分。

budget_cost1000000000.1字面

我试图获取值

while( result.next() )
{
   ProjectBean projectBean = new ProjectBean();
   ...
   projectBean.setBudgetCost( result.getDouble( "budget_cost" ) );
   ...
}

我的模型具有每个变量的setter和getter

public class ProjectBean
{
    ...
    private double profitRate;
    private double vatRate;
    private double fees;
    private double budgetCost;
    private String dateDeadline;
    ...
}

我尝试打印budgetCost并打印1.0E9

我需要它来显示1000000000.1我做错了什么?

1 个答案:

答案 0 :(得分:3)

解决您的问题:查看类java.lang.DecimalFormat - 这将允许您为浮点值定义一些输出格式。

但是,将货币值存储在二进制浮点数类型(例如floatdouble)中通常是一个坏主意,因为一旦使用像这样的值,您将遇到舍入问题0.1(十进制)。更好地使用类似java.math.BigDecimal或(我更喜欢这样)的自定义类来存储内部使用ìntlong以及某种比例的定点值。 / p>